maven在编译带有sun私有API的java代码失败

maven在编译含有sun私有API的java代码失败

这里己经分析的很清楚了

http://code.alibabatech.com/blog/experience_798/maven-javac-compiler-chinese-warnings-message-issue.html

这里也说了事情的来龙去脉

http://www.juvenxu.com/2010/09/01/maven-javac-warning/

 

米国人写代码的时候果然没想到还有非英语国家人们广泛使用他们的产品呀。解决办法:

<build>
		<plugins>
			<plugin>  
		    <groupId>org.apache.maven.plugins</groupId>  
		    <artifactId>maven-compiler-plugin</artifactId>  
		    <version>2.3.2</version>  
		</plugin>   
	</plugins>
</build>

 

2.3.2这个版本中,升级了有问题 的plexus-compiler-javac的版本到1.8.1

<dependency>
      <groupId>org.codehaus.plexus</groupId>
      <artifactId>plexus-compiler-javac</artifactId>
      <version>1.8.1</version>
      <scope>runtime</scope>
      <exclusions>
        <exclusion>
          <groupId>org.codehaus.plexus</groupId>
          <artifactId>plexus-component-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

 

1.8.1中特别定义了如下常量:

private static final String[] WARNING_PREFIXES = { "warning: ", "警告: ", "警告: " };

  private static final String[] NOTE_PREFIXES = { "Note: ", "注: ", "注意: " };

 

 

另外,为什么我们在公司开发时,从没遇到过呢,因为我们项目都有一级级的父pom文件,公司做基础建设的同学早就在根pom中解决了,所以没出现过这种问题