15

右クリックして「サーバーで実行」できるmaven eclipse webappプロジェクトがあり、tomcatにデプロイされます。最近、「maven -> プロジェクト構成の更新」を実行しましたが、プロジェクトを webapp としてデプロイおよび実行できなくなりました。誰もこれを見たことがありますか?Tomcat からの唯一の出力は次のとおりです。アプリケーションをデプロイしようとしているようにも見えません。

Apr 14, 2010 3:58:54 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java
Apr 14, 2010 3:58:54 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:taac-web' did not find a matching property.
Apr 14, 2010 3:58:54 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Apr 14, 2010 3:58:54 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 402 ms
Apr 14, 2010 3:58:54 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Apr 14, 2010 3:58:54 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.24
Apr 14, 2010 3:58:54 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Apr 14, 2010 3:58:54 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Apr 14, 2010 3:58:54 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/14  config=null
Apr 14, 2010 3:58:54 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 247 ms

POM はまだ WAR に設定されていますが、プロジェクトをクリーンアップした後、Maven 依存関係として含まれているライブラリの ClassNotFoundExceptions を取得しています。

SEVERE: Error configuring application listener of class org.springframework.security.web.session.HttpSessionEventPublisher
java.lang.ClassNotFoundException: org.springframework.security.web.session.HttpSessionEventPublisher

これが私のPOMです:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.cable.wuntee.neto.nse</groupId>
  <artifactId>taac-web</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>taac-web JEE5 Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>

    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.1</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
        <version>3.0.1.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>freemarker</artifactId>
        <version>2.3.16</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>3.0.2.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-acl</artifactId>
        <version>3.0.2.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>3.0.2.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>3.0.2.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>cglib</groupId>
        <artifactId>cglib</artifactId>
        <version>2.2</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.ldap</groupId>
        <artifactId>spring-ldap-core</artifactId>
        <version>1.3.0.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.ldap</groupId>
        <artifactId>spring-ldap</artifactId>
        <version>1.3.0.RELEASE</version>
        <type>pom</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-ldap</artifactId>
        <version>3.0.2.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>com.cable.wuntee.neto.nse</groupId>
        <artifactId>wuntee.neto.nse-ldap</artifactId>
        <version>1.0-SNAPSHOT</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>com.cable.wuntee.neto.nse</groupId>
        <artifactId>wuntee.neto.nse-cada</artifactId>
        <version>1.0-SNAPSHOT</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>

    <dependency>
        <groupId>com.cable.wuntee.neto.nse</groupId>
        <artifactId>wuntee.neto.nse-sams</artifactId>
        <version>2.0-SNAPSHOT</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>3.0.1.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>3.0.1.RELEASE</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.15</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.0.2</version>
        <configuration>
          <source>1.5</source>
          <target>1.5</target>
        </configuration>
      </plugin>
    </plugins>
    <finalName>taac-web</finalName>
  </build>
</project>
4

10 に答える 10

16

私は答えを見つけました

TomcatとSpringWeb-クラスが見つかりません例外org.springframework.web.context.ContextLoaderListener

プロジェクトがサーバーに公開されるときに、Mavenの依存関係をサーバーにプッシュする必要があります。

プロジェクトエクスプローラーでWebプロジェクトを右クリックし、[プロパティ]を選択します。[プロジェクトのプロパティ]で、[展開アセンブリ]を選択します。

Deployment Assemblyのプロパティページには、Eclipseによってアセンブルされたアーティファクトとしてサーバーに公開されるコンテンツが表示されます。すべてのMaven依存関係も公開するようにEclipseに指示する必要があります。

これを行うには、「追加」ボタンをクリックしてから、「Javaビルドパスエントリ」を選択します。「次へ」をクリックして、「Mavenの依存関係」を選択します。これにより、EclipseがプロジェクトをWSTサーバーに公開するときに、Maven依存関係JARファイルがlibフォルダーに公開されます。

于 2012-08-07T15:01:19.730 に答える
4

3つの可能な解決策。うまくいかなかった方法に応じて、3つすべてを使用しました。

  1. これを解決するには、POMからSpringセキュリティの依存関係を削除し(spring-security-taglibsとspring-security-configのみがあり、必要なものはすべてプルします)、POMを保存し、Mavenにそれを実行させてから、それらを追加し直しました。もう一度、Mavenに依存関係を再度取得させ、Eclipseでサーバーを再起動します。問題が発生しているとき、EclipseプロジェクトのMaven依存関係ディレクトリにspring-security-webアーティファクト(org.springframework.security.web.session.HttpSessionEventPublisherを保持している)がないようです。私の場合、これはPCを再起動した後にEclipseを起動したときにのみ発生するため、Windows(Vista)とEclipseM2Eclipseプラグインがファイルロックなどでうまく機能していないと想定しています。

  2. 代替ソリューション(問題が再び発生し、以前のソリューションは機能しませんでした)。今回は、ローカルのMavenリポジトリー(Eclipseウィンドウ->環境設定-> Maven->ユーザー設定にあるもの)からorg/springframeworkディレクトリーを削除しました。次に、Mavenの依存関係を更新し、ここでもう一度実行します。

  3. 「Maven->プロジェクト構成の更新」を実行した場合、これが発生するのは、「デプロイメント・アセンブリー」設定にMavenの依存関係が含まれていないことが原因である可能性があります。プロジェクト->プロパティ->デプロイメントアセンブリに移動します。Maven Dependenciesがそこにあり、/ WEB-INF/libのデプロイパスがあることを確認します。そうでない場合は、[追加]をクリックして、[Javaビルドパス]オプションの下にあるものを見つけます。そこにない場合は、ビルドパスも破損している可能性があります(ただし、これは私には発生していません)。

于 2010-08-06T09:46:34.090 に答える
2

WARプロジェクトで発生した奇妙なコンパイルエラーが発生しました。何らかの理由でクラスパスが変更され、WARが依存しているワークスペース内の他のプロジェクトが無視されました。

最終的に機能した唯一の解決策は、ワークスペースを消去し、各プロジェクトで.classpath、.project、および.settingsを削除することでした。新しいワークスペースから始めて、それを解決しました。

Maven WTPバグトラッカーでこれに似たものに言及しているバグを見つけましたが、修正するのに十分な票を獲得できなかったと思います。

于 2010-06-11T22:54:22.477 に答える
2

プロジェクトのプロパティで、「ファセット」に移動し、何かに変換を押し、動的 ​​Web モジュールを有効にして、適用を押します。

于 2011-11-04T09:51:00.643 に答える
2

事故ごとに別のものに変更した<packaging>可能性があります。warあなたのPOMを見せてもらえますか?

また、 WTP 用の Maven WTP Integration がインストールされていることを確認できますか(これはありそうにありませんが、M2Eclipse の最新バージョンをこの追加なしでインストールした可能性があります。プロジェクト構成を更新するまで、何とか機能していました)。

于 2010-04-14T22:20:24.433 に答える
1

これらのどれも役に立たなかった - ワークスペースの解決を無効にし、古いワークスペースの依存関係をインストールすることに対処しました。

于 2010-06-11T22:42:04.700 に答える
0

私は今日同じ問題を抱えていました.EclipseでApacheを再インストールし、後でプロジェクトを再構築/更新するのに役立ちます

于 2013-01-20T16:35:24.113 に答える
0

別の解決策 (問題が再び発生し、以前の解決策は機能しません)。

今回は、ローカルの Maven リポジトリ (Eclipse Window -> Preferences -> Maven -> User Settings にあるもの) から org/springframework ディレクトリを削除しました。次に、Maven の依存関係を更新し、ここでもう一度説明します。

于 2011-02-02T15:28:22.580 に答える
0

さて、私もこれに少し苦労しました。決定的な答えはあまりないと思います。しばらくの間、プロジェクトを削除して再インポートするだけでした。それは毎回うまくいくからです。

今日、プロジェクトでmaven cleanを実行した後、再び機能し始めたことがわかりました(たとえば、コマンドラインからmvn clean)。それがうまくいくかどうか試してみてください。

これは、すべてではなく、選択したいくつかのフォルダーのみをターゲットディレクトリから削除するため、eclipse clean とは異なります。

于 2014-01-06T22:03:38.460 に答える