1.
error: annotations are not supported in -source 1.3
Maven默认是用JDK1.3去编译, 当代码中遇到注解、泛型等功能时,就会报出上面的error。 在pom.xml加入compiler-plugin来解决这个问题
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
2. 没有任何unit test 被执行或者在使用testng suit.xml时有这样的log
[RunInfo] Adding method selector: org.testng.internal.XmlMethodSelector@12786119 priority: 10
[TestNGClassFinder] SKIPPING CLASS class com.mycompany.parseTest no TestNG annotations found
[SuiteRunner] Created 1 TestRunners
它的原因很可能是unit test方法没有declared 为public类型。
public class parseTest {
@Test
void getKeyTest(){
final String role="ROLE";
System.out.println(parsePropertyfile.getKey(role));
}
}
应该在void 前面加上public类型。原因在于它是这个ut pacakge之外的程序调用这个方法的。
3. 将ut case中的log输出到console上
mvn -Dsurefire.useFile=false test
4.
通常是PermSize不够,用下面参数一般可解决问题(注意:用上面的apt源安装的maven,已经正确设置了内存大小!):
在安装目录下面的bin目录下面的mvn.bat文件中添加如下内容:
set MAVEN_OPTS=-Xms256m -Xmx512m -XX:ReservedCodeCacheSize=64m -XX:MaxPermSize=128m
5. jetty启动web 服务
http://www.ibm.com/developerworks/cn/web/wa-lo-jetty/
6. 发布我的jar包到我的remote repository
如何发布我的jar包到我的remote repository
你需要在settings.xml中间设置server:
<servers>
<server>
<id>mycompany-repository</id>
<username>jvanzyl</username>
<!-- Default value is ~/.ssh/id_dsa -->
<privateKey>/path/to/identity</privateKey>
<passphrase>my_key_passphrase</passphrase>
</server>
</servers>
然后在pom.xml中设置远程url:
<distributionManagement>
<repository>
<id>mycompany-repository</id>
<name>MyCompany Repository</name>
<url>scp://repository.mycompany.com/repository/maven2</url>
</repository>
</distributionManagement>