Can';t切换到Java11后执行goal org.eclipse.tycho:tycho-surefire插件:2.0.0:test(默认测试)

Can';t切换到Java11后执行goal org.eclipse.tycho:tycho-surefire插件:2.0.0:test(默认测试),java,eclipse-plugin,java-11,tycho-surefire-plugin,Java,Eclipse Plugin,Java 11,Tycho Surefire Plugin,我正在尝试将我们遗留的基于eclipse插件的多模块项目切换到Java-11,并且制作了几乎所有的东西,除了“eclipse测试插件”项目。它们都抛出了类似的错误 WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.eclipse.osgi.internal.baseadaptor.BaseStorage (file:/home/USER/.m

我正在尝试将我们遗留的基于eclipse插件的多模块项目切换到Java-11,并且制作了几乎所有的东西,除了“eclipse测试插件”项目。它们都抛出了类似的错误

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.eclipse.osgi.internal.baseadaptor.BaseStorage (file:/home/USER/.m2/repository/p2/osgi/bundle/org.eclipse.osgi/3.9.1.v20140110-1610/org.eclipse.osgi-3.9.1.v20140110-1610.jar) to method java.net.URLClassLoader.addURL(java.net.URL)
WARNING: Please consider reporting this to the maintainers of org.eclipse.osgi.internal.baseadaptor.BaseStorage
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
An error has occurred. See the log file
/home/USER/projects/java/PATH-TO-TEST-PROJECT/target/work/configuration/1599554461428.log.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  26.877 s
[INFO] Finished at: 2020-09-08T04:41:01-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.eclipse.tycho:tycho-surefire-plugin:2.0.0:test (default-test) on project TEST-PROJECT: An unexpected error occurred while launching the test runtime (process returned error code 13). Command-line used to launch the sub-process was null -Dosgi.noShutdown=false -Dosgi.os=linux -Dosgi.ws=gtk -Dosgi.arch=x86_64 --illegal-access=permit -Dosgi.clean=true -jar /home/USER/.m2/repository/p2/osgi/bundle/org.eclipse.equinox.launcher/1.3.0.v20130327-1440/org.eclipse.equinox.launcher-1.3.0.v20130327-1440.jar -data /home/USER/projects/java/PATH-TO-TEST-PROJECT/target/work/data -install /home/USER/projects/java/PATH-TO-TEST-PROJECT/target/work -configuration /home/USER/projects/java/PATH-TO-TEST-PROJECT/target/work/configuration -application org.eclipse.tycho.surefire.osgibooter.headlesstest -testproperties /home/USER/projects/java/PATH-TO-TEST-PROJECT/target/surefire.properties in working directory /home/USER/projects/java/PATH-TO-TEST-PROJECT -> [Help 1]
这是日志文件

!SESSION 2020-09-08 04:41:01.199 -----------------------------------------------
eclipse.buildId=unknown
java.version=11.0.7
java.vendor=AdoptOpenJDK
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments:  -application org.eclipse.tycho.surefire.osgibooter.headlesstest -testproperties /home/USER/projects/java/PATH-TO-TEST-PROJECT/target/surefire.properties
Command-line arguments:  -data /home/USER/projects/java/PATH-TO-TEST-PROJECT/target/work/data -application org.eclipse.tycho.surefire.osgibooter.headlesstest -testproperties /home/USER/projects/java/PATH-TO-TEST-PROJECT/target/surefire.properties

!ENTRY org.eclipse.osgi 4 0 2020-09-08 04:41:01.829
!MESSAGE Startup error
!STACK 1
java.lang.RuntimeException: Exception in org.eclipse.osgi.framework.internal.core.SystemBundleActivator.start() of bundle org.eclipse.osgi.
    at org.eclipse.osgi.framework.internal.core.InternalSystemBundle.resume(InternalSystemBundle.java:233)
    at org.eclipse.osgi.framework.internal.core.Framework.launch(Framework.java:656)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.startup(EclipseStarter.java:275)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1426)
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.osgi.framework.internal.core.SystemBundleActivator.start() of bundle org.eclipse.osgi.
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
    at org.eclipse.osgi.framework.internal.core.InternalSystemBundle.resume(InternalSystemBundle.java:225)
    ... 11 more
Caused by: java.lang.IllegalStateException: The System Bundle could not be resolved: Missing Constraint: Bundle-RequiredExecutionEnvironment: J2SE-1.5
    at org.eclipse.osgi.internal.baseadaptor.BaseStorage.checkSystemState(BaseStorage.java:827)
    at org.eclipse.osgi.internal.baseadaptor.BaseStorage.getStateManager(BaseStorage.java:800)
    at org.eclipse.osgi.baseadaptor.BaseAdaptor.getState(BaseAdaptor.java:387)
    at org.eclipse.osgi.internal.baseadaptor.BaseStorage.frameworkStart(BaseStorage.java:923)
    at org.eclipse.osgi.baseadaptor.BaseAdaptor.frameworkStart(BaseAdaptor.java:250)
    at org.eclipse.osgi.framework.internal.core.SystemBundleActivator.start(SystemBundleActivator.java:60)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
    ... 13 more
MANIFEST.MF看起来像

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: PROJECT Test
Bundle-SymbolicName: TEST-PROJECT
Bundle-Version: 2.1.2
Bundle-Vendor: VENDOR
Fragment-Host: PROJECT-WHICH-IS-TESTED
Bundle-RequiredExecutionEnvironment: JavaSE-11
Import-Package: org.junit
Require-Bundle: org.junit
Automatic-Module-Name: TEST-PROJECT
这是tycho surefire插件的父pom

<pluginManagement>
...
    <plugins>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-surefire-plugin</artifactId>
            <version>${tycho.version}</version>
            <configuration>
              <aggregate>true</aggregate>
              <argLine>
                  --illegal-access=permit
              </argLine>
              </configuration>
            </plugin>
    </plugins>

</pluginManagement>
那么,有人能给我一些建议,在这种情况下我应该怎么做


另外,前面所有的程序都在Java8上成功运行,tycho surefire 0.18.1和Bundle RequiredExecutionEnvironment:JavaSE-1.7

我相信我已经找到了问题的主要根源。关键是在我的父pom.xml中设置了一个“EclipseKepler”作为存储库。这就是为什么当我使用JavaSE-1.8时,surefire插件按预期工作,但当我切换到JavaSE-11时,“开普勒”被证明是过时的,因此,我得到了一个奇怪的错误

Missing Constraint: Bundle-RequiredExecutionEnvironment: J2SE-1.5

更改为最新版本后,所有测试都已编译并成功通过。

我相信我已经找到了问题的主要根源。关键是在我的父pom.xml中设置了一个“EclipseKepler”作为存储库。这就是为什么当我使用JavaSE-1.8时,surefire插件按预期工作,但当我切换到JavaSE-11时,“开普勒”被证明是过时的,因此,我得到了一个奇怪的错误

Missing Constraint: Bundle-RequiredExecutionEnvironment: J2SE-1.5

更改为最新版本后,所有测试都已编译并成功通过。

涉及到哪些版本的Eclipse、Tycho等?Eclipse 2020-06、Tycho 2.0.0涉及到哪些版本的Eclipse、Tycho等?Eclipse 2020-06、Tycho 2.0.0该文件前后的外观是什么?该文件前后的外观是什么?
Missing Constraint: Bundle-RequiredExecutionEnvironment: J2SE-1.5