Spring roo 1.1.0安装试用

来源:互联网 发布:台湾人知乎 编辑:程序博客网 时间:2024/06/01 16:31

在我的gentoo里试安装roo,喜欢新东西,所以下的是开发版,1.1.0已经不需要ROO_HOME环境变量了

从spring下个zip包解压出来就可以用了,看下面:

 

ben@ben ~ $ ls /opt/java/spring-roo-1.1.0.M1/annotations  bin  bundle  cache  conf  docs  legal  readme.txt  samples


不过全用时发现non-root用户不能正常使用,报错是roo目录下的cache不能访问,所以联想到可能是文件系统访问权限问题,如:

ERROR: Error creating archive. (java.io.FileNotFoundException: /opt/java/spring-roo-1.1.0.M1/cache/bundle22/version0.0/revision.location (Permission denied))java.io.FileNotFoundException: /opt/java/spring-roo-1.1.0.M1/cache/bundle22/version0.0/revision.location (Permission denied)



我的解决办法是:acl

当然你要知道什么是acl,假设你知道了ACL

 

我在fstab的opt的defauilts后加上了acl(注意红色部分)

 

ben@ben ~ $ grep /opt /etc/fstab /dev/vg0/opt/optext3defaults,acl1 2

 

顺理成章当然要

 

sudo mount -o remount /opt

 

那么...

 

ben@ben ~ $ mount | grep opt/dev/mapper/vg0-opt on /opt type ext3 (rw,acl)

 

这样就打开acl了

 

只要再

 

ben@ben ~ $ sudo setfacl -d -m u:ben:rwx /opt/java/spring-roo-1.1.0.M1/cache/ben@ben ~ $ sudo setfacl -R -m u:ben:rwx /opt/java/spring-roo-1.1.0.M1/cache/

 

验证一下

 

ben@ben ~/workspace/rooweb $ getfacl /opt/java/spring-roo-1.1.0.M1/cache/getfacl: Removing leading '/' from absolute path names# file: opt/java/spring-roo-1.1.0.M1/cache/# owner: root# group: rootuser::rwxuser:ben:rwxgroup::r-xmask::rwxother::r-xdefault:user::rwxdefault:user:ben:rwxdefault:group::r-xdefault:mask::rwxdefault:other::r-x

 

cache下的目录应该也需要给ben以rwx权限

 

再执行一下roo就不会出错了

 

ben@ben ~/workspace/rooweb $ roo     ____  ____  ____     / __ / __ / __    / /_/ / / / / / / /  / _, _/ /_/ / /_/ /  /_/ |_|____/____/    1.1.0.M1 [rev 3a0b8a3]Welcome to Spring Roo. For assistance press TAB or type "hint" then hit ENTER.roo>