0

私はmavenが初めてで、maven3でSpringアプリケーションを開発しています。Maven Web アプリケーションの Web リソースに問題があり、アプリケーション内にリソースをロードできません。アプリケーションを tomcat にデプロイした後、アプリケーションが必要とするファイルを確認できますが、アプリケーションがそれらをイメージなどとしてロードしようとすると、イメージをロードできません。

私の webapp フォルダーには、次のディレクトリ構造があります。

-rw-r--r-- 1 erkin.unlu domain users  360 Sep 18 11:54 index.jsp
drwxr-xr-x 2 erkin.unlu domain users 4096 Sep 18 11:54 resources/
drwxr-xr-x 3 erkin.unlu domain users 4096 Sep 18 11:54 WEB-INF/

resources フォルダーに magni.png があります。

アプリケーションをデプロイした後、プロジェクト フォルダーは tomcat/webapps の下に表示されます。

-rw-r--r-- 1 erkin.unlu domain users  360 Sep 18 11:54 index.jsp
-rw-r--r-- 1 erkin.unlu domain users  518 Sep 18 11:06 magni.png
drwxr-xr-x 3 erkin.unlu domain users 4096 Sep 18 11:54 META-INF/
drwxr-xr-x 2 erkin.unlu domain users 4096 Sep 18 11:54 resources/
drwxr-xr-x 5 erkin.unlu domain users 4096 Sep 18 11:54 WEB-INF/

しかし、index.jsp はブラウザから見ることができるのに、magni.png を見ようとすると、Tomcat から 404 エラーが発生します。

ant を使用する同様のプロジェクトがあり、そのプロジェクトではこの問題は発生していません。

ところで、私の pom.xml には以下のような war プラグインがあります:

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <webResources>
                        <resource>
                            <directory>src/main/webapp/resources</directory>
                        </resource>
                    </webResources>
                </configuration>
            </plugin>

では、この行動の理由は何ですか?Maven または Tomcat のデフォルト構成がいくつかありませんか?

4

1 に答える 1

2

WEB-INF フォルダ外のファイルは、以下のように直接アクセスできます。認証は必要ありません

http://localhost:8080/project/magni.png

tomcat または許可の問題のようです。Maven は単なる構築ツールです。

于 2012-09-18T10:14:28.160 に答える