我正在尝试使用maven 2在windows 上编译javabot.我以前编译过java程序(所以我知道默认的JDK工作正常),这是我第一次使用maven.我得到的错误是:
[INFO]编译失败
\ evanchooly-javabot-dbea131\apt-tools\src\main\java\javabot\maven\Indexer.java:[23,37] package com.sun.tools.javac.processing不存在错误:服务配置文件错误,构造Processor对象时抛出异常或异常:javax.annotation.processing.Processor:找不到Provider javabot.maven.Indexer
我(想)我正确设置了所有环境变量,正如maven下载页面上的指示,以及升级到Java 1.6.0_22,仍然是相同的错误.
我联系了其他人,他们告诉我maven能够在OSX和Linux上正确编译程序而没有任何问题.有人能给我清楚的指示说明使用maven在windows上编译javabot需要做些什么?谢谢.(我正在运行Windows XP,32位)
com.sun.tools 是一个内部 sun 软件包。您不应该向它们编码,因为它们可以随时更改。有关参考,请参阅:http://java.sun.com/products/jdk/faq/faq-sun-packages.html
您的代码损坏的事实意味着 sun(oracle) 确实更改了构建工具所针对的类。
您有两种方法可以解决此问题。
1)更改代码,使其不依赖com.sun
2)随机更改JDK版本,直到找到可以编译它的版本。