我在 Eclipse 中有一个使用 lombok/delombok 的 maven 项目。
当我使用 Maven 脚本(例如mvn clean package
)从 Eclipse 构建时,一切正常。
但是,当我直接从 Eclipse 运行时(比如我的项目的干净/构建),我遇到了一个类路径问题,该问题与应该存在于 JDK 的 tools.jar 中的类有关。我尝试将 tools.jar 直接添加到我的项目构建路径中,但没有成功。
[编辑]
堆栈跟踪是:
03/07/11 23:39:44 CEST: Maven Builder: FULL_BUILD
03/07/11 23:39:44 CEST: [WARN] The POM for com.google.code.gwt-log:gwt-log:jar:3.1.2 is missing, no dependency information available
03/07/11 23:39:44 CEST: Build errors for fiveorbs; org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.projectlombok:maven-lombok-plugin:0.9.3.1:delombok (default) on project fiveorbs: Execution default of goal org.projectlombok:maven-lombok-plugin:0.9.3.1:delombok failed: A required class was missing while executing org.projectlombok:maven-lombok-plugin:0.9.3.1:delombok: com/sun/tools/javac/util/Context
-----------------------------------------------------
realm = plugin>org.projectlombok:maven-lombok-plugin:0.9.3.1
strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
urls[0] = file:/C:/Users/Daedin/.m2/repository/org/projectlombok/maven-lombok- plugin/0.9.3.1/maven-lombok-plugin-0.9.3.1.jar
urls[1] = file:/C:/Program%20Files/Java/jdk1.6.0_26/jre/../lib/tools.jar
urls[2] = file:/C:/Users/Daedin/.m2/repository/org/projectlombok/lombok/0.9.3/lombok-0.9.3.jar
urls[3] = file:/C:/Users/Daedin/.m2/repository/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar
Number of foreign imports: 1
import: Entry[import from realm ClassRealm[maven.api, parent: null]]
-----------------------------------------------------
[/编辑]
我的配置如下:
- Eclipse 3.6 太阳神
- Maven 2.3
- JDK 1.6
- 龙目岛 0.9.3
- Delombok maven插件0.9.3.1
pom.xml中包含delombok插件声明的部分如下:
<plugin>
<groupId>org.projectlombok</groupId>
<artifactId>maven-lombok-plugin</artifactId>
<version>0.9.3.1</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>delombok</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>sun.jdk</groupId>
<artifactId>tools</artifactId>
<version>1.6</version>
<scope>system</scope>
<systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>
</dependencies>
</plugin>
如果这个问题看起来微不足道,我深表歉意,但我已经寻找了几个小时的答案,但我开始陷入困境。
提前感谢您提供的任何提示 - 如果我遗漏了任何有用的信息,请告诉我。