STS开发环境搭建与配置
(2012-04-11 07:24:51)1. 环境准备
安装JDK、MAVEN
1.1. 下载
下载sprdfingsource-tool-suite-2.7.1.RELEASE-e3.7-win32.zip http://www.eclipse.org/downloads/ http://www.springsource.com/downloads/sts?sid=1254937
下载springside-3.3.4-src.zip http://springside.org.cn/download.php 即spring framework
1.2. 解压
解压文件springsource-tool-suite-2.7.1.RELEASE-e3.7-win32.zip,使用较短的目标文件夹名如C:\ springsource,目录结构如下
路径过程可能会导致解压问题
1.3. 运行STS
运行C:\springsource\sts-2.7.1.RELEASE\STS.exe
2. 插件安装及配置
2.1. m2eclipse
STS2.7.1默认安装有插件m2eclipse 0.12.1。
配置Maven安装路径及Settings.xml文件
2.2. Checkstyle(代码重构工具,设定编码规范,自动分析代码是否符合规范)
Eclipse Checkstyle Plugin 5.3.0.201012121300
下载地址http://eclipse-cs.sourceforge.net/update
解压springside-3.3.4-src.zip
D:\springside-3.3.4\tools\checkstyle\checkstyle_springside.xml
2.3. PMD(代码静态分析工具)
http://pmd.sf.net/eclipse
更新3.2.6版本
说明:PMD是一种开源分析Java代码错误的工具。与其他分析工具不同的是,PMD通过静态分析获知代码错误。也就是说,在不运行Java程序的情况下报告错误。PMD附带了许多可以直接使用的规则,利用这些规则可以找出Java源程序的许多问题,例如:
® 潜在的bug:空的try/catch/finally/switch语句
® 未使用的代码:未使用的局部变量、参数、私有方法等
® 可选的代码:String/StringBuffer的滥用
® 复杂的表达式:不必须的if语句、可以使用while循环完成的for循环
® 重复的代码:拷贝/粘贴代码意味着拷贝/粘贴bugs
® 循环体创建新对象:尽量不要再for或while循环体内实例化一个新对象
@ 资源关闭:Connect,Result,Statement等使用之后确保关闭掉
此外,用户还可以自己定义规则,检查Java代码是否符合某些特定的编码规范。例如,你可以编写一个规则,要求PMD找出所有创建Thread和Socket对象的操作。
2.4. Subclipse(svn插件)
http://subclipse.tigris.org/update_1.6.x
2.5. Jupiter(代码走查工具,以xml形式存储review数据,并能通过svn在团队内共享)
http://jupiter-eclipse-plugin.googlecode.com/svn/trunk/site/
3.6.0
2.6. Spket(spket 是一个Eclipse 下编辑 JavaScript 的插件。有格式化javascript代码,有代码高亮提示,有自动完成等功能。)
http://www.spket.com/update/(目前不可用)
该插件网站已更新,更新为http://www.agpad.com/update
1.6.18
安装遇到问题:
删除plugins和features下所有关于spket的文件和文件夹,再安装
2.7. Jinto通过第二个网址下载zip解压放到STS对应目录下即可,不需要通过update的方式。(利用JInto插件在Eclipse中编辑资源文件解决了properties文件的国际化问题。)
http://www.guh-software.de/jinto_en.html
http://www.guh-software.de/jinto/de.guhsoft.jinto-0.13.5.zip
用jinto编辑器打开properties文件后,就可以方便的建立出各国和各种语言的资源文件,同时可以方便的对比书写各种语言的内容,然后它自动进行native2ascii
de.guhsoft.jinto-0.13.5.zip
将解压后的plugins和features内的文件放入D:\springsource\sts-2.7.1.RELEASE\下的相应目录。
2.8. Metrics(Metric主要用于代码圈复杂度,继续层次,代码行等方面进行分析。)
http://metrics.sourceforge.net/update
2.9. Findbug
http://findbugs.cs.umd.edu/eclipse/
删除了plugins和features下所有关于spket的文件和文件夹
安装没有出错,安装时STS中plugins和features下没有任何关于spket的文件和文件夹,并非本人手动删除。
2.10. Pax(运行osgi Framework时选择本地bundle pom文件的一个tab页)
http://www.ops4j.org/pax/eclipse/update/
1.3.0
2.11. JDepend
http://andrei.gmxhome.de/eclipse/
6个
我们在开发Java项目时经常会遇到关于包混乱的问题,特别是在架构更改后,这样的问题尤为突出,JDepend工具可以帮助你在开发过程中随时跟踪每个包的依赖性(引用/被引用),从而设计高维护性的架构,不论是在打包发布还是版本升级都会更加轻松。
2.12. Easyshell
http://pluginbox.sourceforge.net/
3. 注意事项
3.1. 资源UTF-8设置
去除[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
在pom.xml文件的根节点下添加
【以上Hudson测试是没问题的,以下是网上说的】
以上是官方给出的解决方案,但是经过尝试这样只能影响到resource处理时候的编码,真正有用的是如下配置:
...
...
3.2. 插件安装时出现如下提示
CS、PMD、Spekt
点击OK
4. 问题
4.1. 字体问题
Eclipse3.5默认字体为Courier New 10
Eclipse3.7默认字体为Cosolas,中文字很小
4.2. 更新m2e出现问题
卸载之STS2.7.1自带m2eclipse 0.12.1
安装m2e1.0时出现错误提示
Cannot complete the install because of a conflicting dependency.
Software being installed: m2e - Maven Integration for Eclipse 1.0.0.20110607-2117 (org.eclipse.m2e.feature.feature.group 1.0.0.20110607-2117)
4.3. STS启动速度比较慢
需要3分钟左右
4.4. 装完所有插件后启动报错
Findbug、PAX、JDepend、EasyShell后
提示到Team->Mercurial
卸载了MercurialEclipse,报错消失
即在STS安装文件夹中的plugin和features两个文件夹中删除MercurialEclipse相关的文件夹和jar包
4.5. Jupiter视图报错
4.6. Pax runner启动OSGi平台报错
Framework选择Equinox3.5.0/3.6.0/3.6.0
Framework选择Equinox,即可正常启动
升级依赖?
不卸载该插件直接安装:
http://tux2323.github.com/pax-runner-update-site/
4.7. POM文件报错
关闭工程,再打开即可解决
4.8. 依赖的dll文件和so文件报错
Description Resource Path Location Type
Archive for required library: 'lib/ICE_JNIRegistry.dll' in project 'powerconf_agent' cannot be read or is not a valid ZIP file powerconf_agent Build path Build Path Problem