22

私のMavenプロジェクトのpom.xmlは次のようになります。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>groupId</groupId>
  <artifactId>artifactId</artifactId>
  <version>0.0.1-SNAPSHOT</version>

  <build>
   <sourceDirectory>src/main/java</sourceDirectory>
   <resources>
    <resource>
     <directory>src/main/resources</directory>
    </resource>
   </resources>
  </build>
</project>

src / main / resourcesディレクトリに、testというファイルがあります。src / main / javaディレクトリに、次の行を含むクラスがあります。

System.out.println(this.getClass().getResourceAsStream("test"));

コード行をEclipse内で実行すると、出力として取得されます

java.io.BufferedInputStream@1cd2e5f 

プロジェクトを.jarとしてエクスポートして実行すると、出力として取得されます

 null

何か間違った設定をしましたか?

4

3 に答える 3

2

このエラーが発生しましたが、大量のグーグルで解決策を見つけることができませんでした。すべての答えはパスに関するものです。Eclipseで実行できるが、エクスポートされたjarファイルでは実行できないことは誰も気にしません:(

しかし今、私は解決策をとても簡単に見つけました: Eclipse で Maven プロジェクトを右クリック -> プロパティ -> Java ビルド パス -> ソース タブ

次のようなツリーが表示されます。

MyProject/src
   Ouput follder..
   Included (**/*.java)
   Excluded
   ...

をダブルクリックしIncluded (**/*.java)、既存のものを削除してIncluded (All) 、jarファイルをエクスポートします:)

于 2013-03-07T04:25:57.937 に答える