`

eclipse JEE 实战(maven+server)

阅读更多

 

由头

换了新机器,看了同事用新版本的myeclipse的使用状况后(好像装plugin都要连到myeclipse,还有,毕竟人家是收费的,而且把天朝封了),毅然而然的转向eclipse JEE版本,经过一番折腾终于可以凑或使用

 

安装eclipse

下载最新的eclipse JEE 3.7(内置具有调试功能的web服务器插件server - 这个蹉跎的东西大家应该早有耳闻,反正以前各家实现的adapter都老蹉跎的,导致我对其印象极差,不过用eclipse就只能用它了,no alternative~)

安装插件

[subclipse]

安装的时候务必选择所有组件(一定要所有,尤其是哪个svnkit那个可选的,以备万一),反正javaHL 在我本地不能用,只能选用纯svnkit来做svn接口的实现

[m2eclipse]

这个一路ok安装,记得把你以前的repository和setting文件复制过来就好

[server adapter]

Tomcat的adapter默认已经包含;jetty的插件有点小纠结,貌似more adapter对话框里找不到,google后找到一个地址jetty adapter -http://download.eclipse.org/jetty/updates/jetty-wtp/development。同时,你需要去tomcat和jetty的官网下载对应的服务器包,推荐tomcat7.0.23和jetty7.4.5(这个版本是必须的,jetty7.1.x和插件不能很好配合,会有各种缺少类的错误,比较坑人,我也是弄好了好久后放弃之,然后升级到高版本jetty就ok了。。)

配置server adapter(双击server view下的对应server图标就可以编辑server的属性,其中可以看到发布和运行环境等的配置

1)tomcat:没撒好说的,比较方便

2)jetty:推荐选nerver publish,发布我们会用另外一个插件filesync来实现的,后面会提及。因为jetty adapter的发布机制有问题,反正我用不来,点击publish什么也没有发生,反而是clean publish的时候去publish了,而且和context里名字(deploy-name)还不一致,郁闷。。而且不能实时更新,不便于热部署和实时调试。

[Filesync](可选)

update-site:http://andrei.gmxhome.de/eclipse/.用来同步webapp到部署目录。这个插件蛮好用的,速度很快,完全察觉不到copy的进度,可以配置多个源目录(每个源目录可以指定独立的目标,和src folder的使用方式很像),而且还可以使用系统属性,这样的你的filesync的配置文件就可以和工程一起提交了,nice。

工程实战

新建的工程这里就不说了饿,只说从myeclipse转过来的蹉跎工程怎么让他跑起来。

 

  • 修改project facets,添加dynamic web module ,这样你才能使用server插件来部署

 

注意:这里的web servlet 规范选择的2.4 ,默认java1.6对应的好像是3.0,但是jetty用3.0跑步起来,所以先选择3.0后再手动修改org.eclipse.wst.common.project.facet.core.xml

 

  • 将工程改为maven工程

 

修改.project:加入以下内容(如果你是开着工程修改的话,要先加nature再加buildcommand,否则不能顺利添加)

 


修改.classpath:加入以下内容

 

 

 

好了,现在你的工程已经可以编译通过了。

 

  • Web工程部署配置

 

打开工程属性,有需要先修改web部署的上下文的配置

然后将maven lib整合到发布设置中


好了
如果你是tomcat,到这里配置就完成了。。在server view下add你的web 工程吧,然后点击绿色的小箭头,跑起来。。

 

 

------------------------------------------------------------------------------------------以下为jetty服务器工程的相关配置----------------------------------------------------------------------------------------------

jetty的话,部署还是相对麻烦的,貌似直接add project到server下,还是不能正确启动起来,所以jetty我们自己半自动部署(借助filesync插件)。

-- 典型的filesync 配置文件在 .settings/de.loskutov.FileSync.prefs,如果你已经安装了插件,那么工程属性里可以直接修改,当然如果使用eclipse的链接资源,还是要手动改下:

#Mon Dec 12 12:04:47 CST 2011
WARNING=DO NOT MODIFY THIS FILE IF YOU DON'T UNDERSTAND
defaultDestination=JETTY_DEPLOY/manager
defaultVariables=
eclipse.preferences.version=1
includeTeamPrivateFiles=false
map|0=src/main/webapp|,|,|,|,
map|1=target/dependency|JETTY_DEPLOY/manager/WEB-INF/lib/|,|,|,
useCurrentDateForDestinationFiles=false

-------------------------------

上面的JETTY_DEPLOY是一个eclipse的链接资源,添加方法 window->perferrence->general->workspace->linked resource 添加一个就好了,可能需要重启下eclipse来使得filesync完全生效。

manager是你的部署context名字,需要手动指定下

filesync会在资源有任何改变的时候同步(部署)源目录到目标目录,虽然步骤繁琐了点,但是现在你的jetty已经能实时更新以及调试了。。码字真累,到这里基本就可以进行大多数开发了。mark一记。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics