6

org.myapp.mypackageいくつかの ruby​​ ファイル ( ) を含むパッケージがあり、Java クラス ファイルと同じパッケージ内*.rbの生成されたビルド jar にそれらを含める必要があります。

友人のMavenにこれを行うように伝えるにはどうすればよいですか?

注:いいえ、他の場所にコピーすることはできませんが、提案してくれてありがとう. :)

4

3 に答える 3

10

<build>POMのビットのリソースセクションを変更できます。

<resources>
  <resource>
    <directory>src/main/resources</directory>
  </resource>
  <resource>
    <filtering>false</filtering>
    <directory>src/main/java</directory>
    <includes>
      <include>*.rb</include>
    </includes>
    <excludes>
      <exclude>**/*.java</exclude>
    </excludes>
  </resource>
</resources>

または、他の答え(で同じパッケージ構造を作成するsrc/main/resources)も機能します。

于 2012-05-01T07:36:30.387 に答える
2

問題を正しく理解しているかどうかはわかりませんが、Ruby ファイルが maven によってパッケージ化され、依存関係として宣言されている場合は、shade プラグインを使用して、結果の jar ファイルにコンテンツを含めることができます。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>1.4</version>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
            <configuration>
                <artifactSet>
                    <includes>
                        <include>org.myapp.mypackage:mypackage</include>
                    </includes>
                </artifactSet>
                <filters>
                    <filter>
                        <artifact>org.myapp.mypackage:mypackage</artifact>
                        <includes>
                            <include>org/my/package/*.rb</include>
                        </includes>
                    </filter>
                </filters>
            </configuration>
        </execution>
    </executions>
</plugin>
于 2012-05-01T10:17:02.073 に答える
-2

それらを正しいディレクトリ(一般的にはsrc / main / resources)に配置し、Jarに適切にバンドルする必要があります。* .rbファイルを配置するには、src / main/resourcesフォルダーの下に同じdir構造を作成します。

于 2012-05-01T04:16:13.057 に答える