我们的Jenkins有一个使用Java8的Maven/Tycho构建,它在2月份工作得很好,但是现在已经在4月份停止工作了。(由于它在此间隔期间没有运行,所以我不确定它何时停止工作。)
下载p2存储库后立即抛出的异常(可能就在中间)是:
[WARNING] Error initializing: org.eclipse.tycho.p2.resolver.P2DependencyResolver@18bef28
java.lang.RuntimeException: java.lang.IllegalStateException: Service is not registered class='interface org.eclipse.tycho.core.shared.ProxyServiceFacade'
at org.eclipse.sisu.equinox.embedder.internal.DefaultEquinoxEmbedder.checkStarted (DefaultEquinoxEmbedder.java:312)
at org.eclipse.sisu.equinox.embedder.internal.DefaultEquinoxEmbedder.getService (DefaultEquinoxEmbedder.java:286)
at org.eclipse.sisu.equinox.embedder.internal.DefaultEquinoxEmbedder.getService (DefaultEquinoxEmbedder.java:281)
at org.eclipse.tycho.p2.resolver.P2DependencyResolver.initialize (P2DependencyResolver.java:429)
Caused by: java.lang.IllegalStateException: Service is not registered class='interface org.eclipse.tycho.core.shared.ProxyServiceFacade'
at org.eclipse.sisu.equinox.embedder.internal.DefaultEquinoxEmbedder.getService (DefaultEquinoxEmbedder.java:302)
at org.eclipse.sisu.equinox.embedder.internal.DefaultEquinoxEmbedder.getService (DefaultEquinoxEmbedder.java:281)
at org.eclipse.tycho.osgi.configuration.OSGiProxyConfigurator.afterFrameworkStarted (OSGiProxyConfigurator.java:41)
at org.eclipse.sisu.equinox.embedder.internal.DefaultEquinoxEmbedder.doStart (DefaultEquinoxEmbedder.java:185)...and...
[WARNING] Error injecting: org.eclipse.tycho.p2.resolver.P2DependencyResolver
com.google.inject.ProvisionException: Unable to provision, see the following errors:
1) Error notifying InjectionListener org.eclipse.sisu.plexus.PlexusBeanBinder@1b6fe69 of org.eclipse.tycho.p2.resolver.P2DependencyResolver.
Reason: java.lang.RuntimeException: java.lang.IllegalStateException: Service is not registered class='interface org.eclipse.tycho.core.shared.ProxyServiceFacade'
while locating org.eclipse.tycho.p2.resolver.P2DependencyResolver
1 error
at com.google.inject.internal.InternalProvisionException.toProvisionException (InternalProvisionException.java:226)
at com.google.inject.internal.InjectorImpl$1.get (InjectorImpl.java:1053)
at com.google.inject.internal.InjectorImpl.getInstance (InjectorImpl.java:1086)
at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)...and当然..。
[ERROR] Internal error: java.lang.RuntimeException: Could not instantiate required component: com.google.inject.ProvisionException: Unable to provision, see the following errors:
[ERROR]
[ERROR] 1) Error notifying InjectionListener org.eclipse.sisu.plexus.PlexusBeanBinder@1b6fe69 of org.eclipse.tycho.p2.resolver.P2DependencyResolver.
[ERROR] Reason: java.lang.RuntimeException: java.lang.IllegalStateException: Service is not registered class='interface org.eclipse.tycho.core.shared.ProxyServiceFacade'
[ERROR] while locating org.eclipse.tycho.p2.resolver.P2DependencyResolver
[ERROR] at ClassRealm[extension>org.eclipse.tycho:tycho-maven-plugin:1.3.0, parent: sun.misc.Launcher$AppClassLoader@647e05] (via modules: org.eclipse.sisu.wire.WireModule -> org.eclipse.sisu.plexus.PlexusBindingModule)
[ERROR] while locating org.eclipse.tycho.core.DependencyResolver annotated with @com.google.inject.name.Named(value=p2)
[ERROR]
[ERROR] 1 error
[ERROR] role: org.eclipse.tycho.core.DependencyResolver
[ERROR] roleHint: p2
[ERROR] -> [Help 1]我的第一个想法是Maven接受插件的新版本,但是在pom.xml中没有缺少版本,Maven也没有对此发出警告。
我试着从Tycho 0.22更新到0.26到1.3,但这两个版本都不起作用。
我尝试使用Maven 3.0和3.6运行构建,但都没有工作。
我尝试了32位和64位的Java 8和Java 11。
现在,我甚至不知道从哪里开始寻找问题的根源。有人能解释一下这件事吗?
(如果你需要更多的信息,就问问吧。文件相当长,所以在缩小问题的范围之前,我不希望将所有文件都复制到这个问题中。)
发布于 2019-09-18 20:16:15
它帮助我清理本地maven存储库。
通常位于<User-home>/.m2
HTH
发布于 2021-05-10 11:36:07
我认为我有类似于您的设置:一个Eclipse RCP项目,它应该由Maven/Tycho构建在Docker容器中的Jenkins上。
以下问题给了我一个正确方向的提示:bug.cgi?id=552877
当我使用-X运行Maven时,我得到了以下调试输出:
[DEBUG] Using local repository at ?/.m2/repository这就引出了以下问题:Why does maven use "?" as my home directory
但是除了-s参数之外,我还需要显式地设置user.home参数。(但这可能只是因为我没有在settings.xml中设置本地存储库位置,所以才需要这样做)
这最终导致了Maven调用:mvn -B clean verify --fail-at-end -s /some/folder/settings.xml -Duser.home=/another/folder
https://stackoverflow.com/questions/55683734
复制相似问题