2

現在の Java EE プロジェクトを maven に移植しています。私はmavenによって作成されている戦争のフォルダ構造に取り組んでいましたが、どういうわけか動けなくなりました。

Maven は、WEB-INF/classes フォルダー内の .css、.js などを含む、webapps 内のすべてのファイルをコピーします。私はそれらのために別のフォルダーリソースを保持しており、.class および .properties ファイルだけをクラスフォルダー内にコピーしたいと考えています。

どうすればこれを達成できますか?

-- さらにデータを追加 --

使用して

 <webResources>
<resource>
<directory>${basedir}/src/main/resources</directory>
<targetPath>resources</targetPath>
<includes>
<include>**/*.*</include>
</includes>
</resource>
 </webResources>

私の戦争内にリソースフォルダーを作成し、それらすべてのファイルをリソースフォルダー内に保持しますが、どういうわけかそれらのコピーも WEB-INF/classes 内に作成されます

4

2 に答える 2

3

@benzonicoが述べたように、webappリソースを保持する必要がsrc/main/webappありますsrc/main/resources。これを変更できない場合は、次のようなものを追加して、jsおよびcssファイルがクラスフォルダーにコピーされないようにすることができます。

 <build>
    ...
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <excludes>
          <exclude>*.css</exclude>
          <exclude>*.js</exclude>
        </excludes>
      </resource>
      ...
    </resources>
    ...
  </build>
于 2013-03-14T09:09:30.803 に答える
3

maven-war-plugin一部のファイルをパッケージから除外するように を設定できます。そのためのドキュメントを確認してください。

ただし、通常は、Web リソースをアプリケーションのディレクトリ内のクラスパスの外 (したがって 内ではないsrc/main/resources) に保持します。webapp

は、クラスパスで使用できるようにするファイル (ファイル、xml 構成ファイルなど)を受け取ることにclassesなるため、リソースはディレクトリにコピーされます。src/main/resourcesproperties

于 2013-03-14T08:53:13.597 に答える