7

依存関係 globalmentor-core.jar に JavaScript のライブラリがあり、別のプロジェクトで maven-dependency を使用して JavaScript を Web ディレクトリに転送します。

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.1</version>
            <executions>
                <execution>
                    <id>unpack</id>
                    <phase>process-resources</phase>
                    <goals>
                        <goal>unpack</goal>
                    </goals>
                    <configuration>
                        <artifactItems>
                            <artifactItem>
                                <groupId>com.globalmentor</groupId>
                                <artifactId>globalmentor-core</artifactId>
                                <overWrite>true</overWrite>
                                <outputDirectory>${project.build.outputDirectory}/com/guiseframework/assets/javascript</outputDirectory>
                                <includes>**/*.js</includes>
                            </artifactItem>
                        </artifactItems>
                    </configuration>
                </execution>
            </executions>
        </plugin>

それはコマンドラインで素晴らしく機能します。m2eclipse を使用する Eclipse では、次のようになります。

2/4/11 5:26:53 AM PST: Build errors for guiseframework; org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.1:unpack (unpack) on project guiseframework: Error unpacking file: R:\java\trunk\globalmentor-core\target\classes to: R:\java\trunk\guiseframework\target\classes\com\guiseframework\assets\javascript
org.codehaus.plexus.archiver.ArchiverException: The source must not be a directory.

私が見つけることができる最も近いものはhttp://jira.codehaus.org/browse/MDEP-187で、誰かが「すぐに些細なパッチを提供する」と主張しています。それは 2008 年のことです。

これに対する修正はありますか、それとも行き詰まっていますか?

4

1 に答える 1

2

この問題の解決策/回避策を見つけました。

私の構成: Windows XP SP 3、Maven 3、JDK 1.6.0_24、「C:\Documents and Settings\<YOUR_ID>\.m2」フォルダーの下の Maven リポジトリ。

次の手順を実行します:

  1. 'dir c:\ /X' を実行し、~ を含む文字列を探します

    2011/08/01 04:53 PM DOCUME~1          ドキュメントと設定

  2. settings.xml ファイルを開き、<settings>タグの下に localRepository タグを追加します:
    <localRepository>C:/DOCUME~1/<YOUR_ID>/.m2/repository<\localRepository>

これにより、プラグインが機能するはずです。どうやら、maven-dependency-plugin (バージョン 2.3 まで) には、スペースを含むパスに問題があるようです。

よろしく、
カットベルト。

于 2011-10-06T15:01:12.970 に答える