我正在使用Maven Application Assembler插件从我的Java项目生成独立的可执行文件.应用程序读入配置文件,包括Spring文件.Application Assembler插件有一个选项(默认激活),可以将etc /目录添加到应用程序的类路径中,但是如何让插件将配置文件复制到此目录中呢?
或者更一般地说,Maven中应用程序配置文件的犹太位置在哪里不应该打包在工件中?
您还可以使用资源过滤:http: //maven.apache.org/guides/getting-started/index.html#How_do_I_filter_resource_files
打开过滤:
...
<build>
...
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
...
</build>
...
Run Code Online (Sandbox Code Playgroud)
在src/main/resources下创建一个文件,例如:application.properties
application.properties
configprop.1=${param1}
configprop.2=${param2}
Run Code Online (Sandbox Code Playgroud)
然后设置一个配置文件并在settings.xml中设置一些属性,这些属性设置不同的属性,具体取决于它是dev还是生成版本.请参阅:http://maven.apache.org/guides/introduction/introduction-to-profiles.html
我有不同的属性设置,具体取决于它是构建服务器,开发还是生产部署
mvn -Denv = dev || mvn -Denv = dev-build || mvn -Denv =生产
maven链接有很好的描述.
我不知道我的理解是否正确。但我过去在需要复制配置文件的项目中所做的是使用Maven AntRun 插件。我所做的是在进程资源阶段执行插件,并使用 Ant 复制任务将配置文件复制到指定目录。汇编器插件在打包阶段执行,因此如果您将配置文件放在正确的位置,它应该会拾取您的配置文件。希望这能稍微回答你的问题。
| 归档时间: |
|
| 查看次数: |
15007 次 |
| 最近记录: |