web-dev-qa-db-ja.com

Maven:目標の実行に失敗しましたorg.Apache.maven.plugins:maven-resources-plugin:2.7:resources

Mavenを使用してプロジェクトを構築しています。私のMavenバージョンはApache-maven-3.0.4です。 Eclipse Lunaを使用しています。プロジェクトをビルドしようとすると、次のエラーが表示されます

[エラー] OrionCommunityプロジェクトの目標org.Apache.maven.plugins:maven-resources-plugin:2.7:resources(default-resources)の実行に失敗しました:無効にマーク-> [ヘルプ1]。

以下は、mvn clean install -Xを実行したときのスタックトレースです。

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:53.295s
[INFO] Finished at: Thu Oct 09 20:00:26 IST 2014
[INFO] Final Memory: 9M/25M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.Apache.maven.plugins:maven-resources-plugin:2.7:resources (default-resources) on project OrionCommunity: Mark invalid -> [Hel
p 1]
org.Apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.Apache.maven.plugins:maven-resources-plugin:2.7:resources (default-resources)
 on project OrionCommunity: Mark invalid
        at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:217)
        at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:153)
        at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:145)
        at org.Apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.Java:84)
        at org.Apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.Java:59)
        at org.Apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.Java:183)
        at org.Apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.Java:161)
        at org.Apache.maven.DefaultMaven.doExecute(DefaultMaven.Java:320)
        at org.Apache.maven.DefaultMaven.execute(DefaultMaven.Java:156)
        at org.Apache.maven.cli.MavenCli.execute(MavenCli.Java:537)
        at org.Apache.maven.cli.MavenCli.doMain(MavenCli.Java:196)
        at org.Apache.maven.cli.MavenCli.main(MavenCli.Java:141)
        at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
        at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
        at Java.lang.reflect.Method.invoke(Method.Java:597)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.Java:290)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.Java:230)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.Java:409)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.Java:352)
Caused by: org.Apache.maven.plugin.MojoExecutionException: Mark invalid
        at org.Apache.maven.plugin.resources.ResourcesMojo.execute(ResourcesMojo.Java:306)
        at org.Apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.Java:101)
        at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:209)
        ... 19 more
Caused by: org.Apache.maven.shared.filtering.MavenFilteringException: Mark invalid
        at org.Apache.maven.shared.filtering.DefaultMavenFileFilter.copyFile(DefaultMavenFileFilter.Java:129)
        at org.Apache.maven.shared.filtering.DefaultMavenResourcesFiltering.filterResources(DefaultMavenResourcesFiltering.Java:264)
        at org.Apache.maven.plugin.resources.ResourcesMojo.execute(ResourcesMojo.Java:300)
        ... 21 more
Caused by: Java.io.IOException: Mark invalid
        at Java.io.BufferedReader.reset(BufferedReader.Java:485)
        at org.Apache.maven.shared.filtering.MultiDelimiterInterpolatorFilterReaderLineEnding.read(MultiDelimiterInterpolatorFilterReaderLineEnding.Java:416)
        at org.Apache.maven.shared.filtering.MultiDelimiterInterpolatorFilterReaderLineEnding.read(MultiDelimiterInterpolatorFilterReaderLineEnding.Java:205)
        at Java.io.Reader.read(Reader.Java:123)
        at org.Apache.maven.shared.utils.io.IOUtil.copy(IOUtil.Java:181)
        at org.Apache.maven.shared.utils.io.IOUtil.copy(IOUtil.Java:168)
        at org.Apache.maven.shared.utils.io.FileUtils.copyFile(FileUtils.Java:1856)
        at org.Apache.maven.shared.utils.io.FileUtils.copyFile(FileUtils.Java:1804)
        at org.Apache.maven.shared.filtering.DefaultMavenFileFilter.copyFile(DefaultMavenFileFilter.Java:114)
        ... 23 more

私のmavenリポジトリはD:/ mavenrepoの下にあります。リポジトリにあるすべてのjarファイルを完全に削除し、クリーンインストールを実行しました。しかし、私はまだこのエラーを受け取ります。

41
Avinash Reddy

と:

        <plugin>
          <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>2.7</version>
        </plugin>

次の例外が発生していました。

...
Caused by: org.Apache.maven.plugin.MojoExecutionException: Mark invalid
    at org.Apache.maven.plugin.resources.ResourcesMojo.execute(ResourcesMojo.Java:306)
    at org.Apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.Java:132)
    at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:208)
    ... 25 more
Caused by: org.Apache.maven.shared.filtering.MavenFilteringException: Mark invalid
    at org.Apache.maven.shared.filtering.DefaultMavenFileFilter.copyFile(DefaultMavenFileFilter.Java:129)
    at org.Apache.maven.shared.filtering.DefaultMavenResourcesFiltering.filterResources(DefaultMavenResourcesFiltering.Java:264)
    at org.Apache.maven.plugin.resources.ResourcesMojo.execute(ResourcesMojo.Java:300)
    ... 27 more
Caused by: Java.io.IOException: Mark invalid
    at Java.io.BufferedReader.reset(BufferedReader.Java:505)
    at org.Apache.maven.shared.filtering.MultiDelimiterInterpolatorFilterReaderLineEnding.read(MultiDelimiterInterpolatorFilterReaderLineEnding.Java:416)
    at org.Apache.maven.shared.filtering.MultiDelimiterInterpolatorFilterReaderLineEnding.read(MultiDelimiterInterpolatorFilterReaderLineEnding.Java:205)
    at Java.io.Reader.read(Reader.Java:140)
    at org.Apache.maven.shared.utils.io.IOUtil.copy(IOUtil.Java:181)
    at org.Apache.maven.shared.utils.io.IOUtil.copy(IOUtil.Java:168)
    at org.Apache.maven.shared.utils.io.FileUtils.copyFile(FileUtils.Java:1856)
    at org.Apache.maven.shared.utils.io.FileUtils.copyFile(FileUtils.Java:1804)
    at org.Apache.maven.shared.filtering.DefaultMavenFileFilter.copyFile(DefaultMavenFileFilter.Java:114)
    ... 29 more



次に、maven-filtering 1.3を追加すると消えます。

        <plugin>
          <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>2.7</version>
          <dependencies>
            <dependency>
                <groupId>org.Apache.maven.shared</groupId>
                <artifactId>maven-filtering</artifactId>
                <version>1.3</version>
            </dependency>
          </dependencies>
        </plugin>
61
arntg

私のためにこの作品を削除します:

<filtering>true</filtering>

私はそれが原因であると思います このフィルタリングバグ

10
Justin

/ src/main/resourcesをフィルタリングしていて、このディレクトリにキーストア(* .jks)バイナリを追加し忘れていたため、この問題もありました。

バイナリファイルを除外して「リソース」ブロックを追加すると、問題が解決する場合があります。

<build>
  <finalName>somename</finalName>
  <testResources>
    <testResource>
      <directory>src/test/resources</directory>
      <filtering>false</filtering>
    </testResource>
  </testResources>
  <resources>
    <resource>
      <directory>src/main/resources</directory>
      <filtering>true</filtering>
      <excludes>
        <exclude>*.jks</exclude>
        <exclude>*.png</exclude>
      </excludes>        
    </resource>
  </resources>
...
5
Dan

私のために働いたのは、フィルタリングしたいものを正確に指定するためにincludeタグを追加することです。

リソースプラグインはsrc/main/resourceフォルダー全体に問題があるようです。これはおそらく内部の特定のファイルが原因です。

    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
            <includes>
                <include>application.yml</include>
            </includes>
        </resource>
    </resources>
4
sashok_bg

公式文書から

警告:画像などのバイナリコンテンツを含むファイルはフィルタリングしないでください!これにより、出力が破損する可能性が高くなります。

リソースとしてテキストファイルとバイナリファイルの両方がある場合は、2つのフォルダーを分離することをお勧めします。 1つのフォルダーsrc/main/resources(デフォルト)はフィルターされていないリソース用で、別のフォルダーsrc/main/resources-filteredはフィルターされたリソース用です。

<project>
  ...
  <build>
    ...
    <resources>
      <resource>
        <directory>src/main/resources-filtered</directory>
        <filtering>true</filtering>
      </resource>
      ...
    </resources>
    ...
  </build>
  ...
</project>

これで、これらのファイルをフィルタリングしないsrc/main/resourcesに配置し、他のファイルをsrc/main/resources-filteredに配置できます。

すでに述べたように、画像、pdfなどのバイナリファイルのフィルタリング出力が破損する可能性があります。このような問題を防ぐために、フィルタリングされないファイル拡張子を設定できます。

最も確かに、フィルタリングできないファイルがディレクトリにあります。そのため、フィルタリングされていない拡張子を指定する必要があります。

2
Radouane ROUFID

私の場合、targetPathには値がありませんでした。問題のあるファイルdirectoryresources --> resourceには空白がありました。 Code Sample 2にあるようにglobalに更新し、ビルドを再実行して問題を修正する必要がありました。

コードサンプル1(問題あり)

<build>
    <resources>
        <resource>
            <directory>src/main/locale</directory>
            <filtering>true</filtering>
            <targetPath></targetPath>
            <includes>
                <include>*.xml</include>
                <include>*.config</include>
                <include>*.properties</include>
            </includes>
        </resource>
    </resources>

コードサンプル2(修正適用済み)

<build>
    <resources>
        <resource>
            <directory>src/main/locale</directory>
            <filtering>true</filtering>
            <targetPath>global</targetPath>
            <includes>
                <include>*.xml</include>
                <include>*.config</include>
                <include>*.properties</include>
            </includes>
        </resource>
    </resources>
1
Santosh Sindham

私の場合、それはIntelliJとの競合でした。コマンドラインからプロジェクトをビルドすることで解決しましたが、うまくいきました!

0
Sudabe-Neirizi

私は同じ問題に直面し、私のために働いている下のようなフィルタリングを偽りました。同じことを試すことができます...

<testResources>
    <testResource>
        <directory>src/test/Java</directory>
        <filtering>false</filtering>
    </testResource>
    <testResource>
        <directory>src/test/resources</directory>
        <filtering>false</filtering>
    </testResource>
</testResources>
0