2015-08-26 39 views
0

我有一組文件,我想將其包含在由mvn compile生成的.jar中。不幸的是,我希望將它們放置在.jar中的特定路徑中。例如,我希望shaders/main.glsl位於.jar文件中,如com/purplefrog/expglsl/castle/main.glsl如何在maven的pom.xml中的一組資源上指定目錄前綴

如何在pom.xml中指定此映射?我不能在源代碼項目的目錄級別中弄亂其他編程人員的工作流程。

+0

把這個類放在'src/main/resources/com/purplefrog/expglsl/castle/main.glsl'中,它會自動在那裏。如果這會混淆其他人的聲音,就像你違反了SRP。 – khmarbaise

回答

1

process-resources階段,可以移動不可編譯的文件(由maven-resources-plugin)。你應該做的是添加一個resource-block你的pom。這裏你需要指定directory。您也可以添加targetPath。總之它看起來像

<resource> 
    <directory>shaders</directory> 
    <!-- include all ore just a couple of files? -- > 
    <includes> 
    <include>main.glsl</include> 
    </includes> 
    <targetPath>com/purplefrog/expglsl/castle</targetPath> 
</resource> 

現在,這些文件被複制到target/classes並在package階段,他們會成爲罐子的一部分。

相關問題