2011-08-10 12 views
1

Nexusサーバをバージョン1.7.2から最新の1.9.2にアップグレードしようとしています。自分のTomcatインストール(Tomcat 6.0.18、LinuxのSun Java 1.6.0_14)でwarディストリビューションを使用しています。Sonatype Nexusのアップグレードエラー(NoClassDefFoundError)を修正するにはどうすればよいですか?

私がしたことは、古いバージョンのwebappをアンデプロイしてから、新しいバージョンのnexus.warを(TomcatのHTMLマネージャを介して)デプロイしたことです。これはすべてうまくいくようですが、webappがデプロイされますが、アクセスしようとすると500 Internal Server Errorが発生します。

ネクサスログに見ると、私は次のメッセージを参照してください。私は、これは既知の問題であるかどうかを確認するために少し周りググではなく、本当にでしてい

2011-08-10 23:57:42 WARN [http-8080-4 ] - o.s.g.b.r.LoadedCla~   - Error  injecting: org.sonatype.nexus.plugins.mac.api.MacRepositoryPlexusResource 
java.lang.NoClassDefFoundError: org/sonatype/nexus/index/ArtifactInfoFilter 
    at java.lang.Class.getDeclaredConstructors0(Native Method) 
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389) 
    at java.lang.Class.getDeclaredConstructors(Class.java:1836) 
    at com.google.inject.spi.InjectionPoint.forConstructorOf(InjectionPoint.java:243) 
    at com.google.inject.internal.ConstructorBindingImpl.create(ConstructorBindingImpl.java:96) 
    at com.google.inject.internal.InjectorImpl.createUninitializedBinding(InjectorImpl.java:628) 
(....) 

2011-08-10 23:57:42 ERROR [http-8080-4 ] - o.a.c.c.C.[.[.[/nex~   - nexus: Error during the starting of the Restlet Application 
com.google.inject.ProvisionException: Guice provision errors: 

1) Error injecting: org.sonatype.nexus.plugins.mac.api.MacRepositoryPlexusResource 
    at ClassRealm[org.sonatype.nexus.plugins:nexus-archetype-plugin:1.0.1-SNAPSHOT, parent: ClassRealm[plexus.core, parent: null]] 
    while locating org.sonatype.plexus.rest.resource.PlexusResource annotated with @com.google.inject.name.Named(value=org.sonatype.nexus.plugins.mac.api.MacRepositoryPlexusResource) 

1 error 
    at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:977) 
    at com.google.inject.Scopes$1$1.get(Scopes.java:59) 
    at org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:79) 
    at org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:53) 
    (...) 

を何かを見つける...誰もNexusをアップグレードするときに同様の問題を経験しましたか、それとも何をすべきかを知っていますか?

+0

また、この質問をSonatypeコミュニティフォーラムに投稿しました:http://getsatisfaction.com/sonatype/topics/upgrade_from_1_7_2_to_1_9_2_war_distro_fails_with_noclassdeffounderror –

答えて

1

この回答はSonatypeコミュニティフォーラムから見つかりました:古いネクサスアーキタイププラグインがインストールされていました(sonatype-work/nexus/plugin-repositoryにあります)。明らかに、この機能はNexus自体に付属しています。プラグインを削除すると問題が解決しました。