如何在Eclipse和M2E的maven pom.xml文件中定义类路径条目的访问规则?
为了避免jfxrt.jar的非法访问警告,我手动更改了我的类路径文件以包含访问规则:
通缉类路径条目
如果我执行我的pom.xml文件, 则删除标记accessrule并且新条目为
当前由pom.xml / M2E生成的类路径条目
这是因为有关访问规则的信息未包含在我的pom.xml文件中。 如何修改我的pom.xml文件以生成所需的类路径文件?
-
我可以使用maven-compiler-plugin的一些配置吗?
-
或者我是否必须使用一些额外的maven插件来修改类路径文本文件?
-
或者根本不可能在pom.xml文件中解决这个问题,我将不得不写一个M2E的function请求?
这是我的pom.xml文件的片段(我使用pom包装):
用于编译阶段的Curent pom.xml条目
org.apache.maven.plugins maven-compiler-plugin 3.3 1.8 1.8 compile-execution compile compile org.treez.test-compile-execution org.treez.test-compile testCompile
你是以错误的方式去做的。 问题不是来自Maven,而是来自Eclipse。
您应该安装e(fx)clipse插件。 这将删除Eclipse的非法访问警告。 无需调整Maven配置; 确保您正在为JDK 8编译。
我找到了修复我的.class文件的解决方法。 需要两个步骤:
- 将maven-antrun-plugin添加到pom.xml文件中的#build#=>#plugins#部分,以替换.classpath文件中的文本:
org.apache.maven.plugins maven-antrun-plugin 1.8 prepare-package run
- 告诉M2E执行该插件。 否则M2E会忽略它。 在pom.xml文件的#build#=>#pluginManagement#部分中定义生命周期映射:
org.eclipse.m2e lifecycle-mapping 1.0.0 org.apache.maven.plugins maven-antrun-plugin 1.8 run false