我在 Java 1.6 中使用了一些JSR166类,其中一些在java.util.concurrent
. 我在 OSX 上,但我希望它最终能在 Linux 上运行。
如果我设置这个环境变量,我可以运行我的项目:
export MAVEN_OPTS=-Xbootclasspath/p:/Users/me/.m2/repository/org/codehaus/jsr166-mirror/jsr166/1.7.0/jsr166-1.7.0.jar
我尝试按照此处的说明进行操作,并将设置放入我的pom.xml
:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<version>3.0</version>
<compilerArguments>
<verbose/>
<bootclasspath>/Users/me/.m2/repository/org/codehaus/jsr166-mirror/jsr166/1.7.0/jsr166-1.7.0.jar</bootclasspath>
</compilerArguments>
</configuration>
</plugin>
不幸的是,这给出了一个关于无法找到的错误java.lang
。如果我在中添加对classes.jar
(显然是 OSX 的版本rt.jar
)的引用,bootclasspath
我可以修复该错误,但这只会让我回到我开始的地方:
java.lang.SecurityException: Prohibited package name: java.util.concurrent
我应该如何设置 maven 以正确使用此参数?