我有一个像这样结构的javaFX Maven项目:
BaseDir_
|--src_
| |-- Main
| | |-- java
| | |-- resources_
| | | setting.xml
| |--Test
|--database.mv.db
我正在使用zenjava JavaFX插件,因此pom.xml中的配置是:
<groupId>com.zenjava</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>8.1.4</version>
<configuration>
<mainClass>main.MainApplication</mainClass>
<jfxMainAppJarName>entrepriseLimited.jar</jfxMainAppJarName>
<vendor>myCompany</vendor>
</configuration>
<executions>
<execution>
<!-- required before build-native -->
<id>create-jfxjar</id>
<phase>package</phase>
<goals>
<goal>build-jar</goal>
</goals>
</execution>
<execution>
<id>create-native</id>
<phase>package</phase>
<goals>
<goal>build-native</goal>
</goals>
</execution>
</executions>
</plugin>
执行build-jar&amp;构建本机目标,我没有找到“database.mv.db”文件,我怎么能告诉maven把“database.mv.db”放在里面 $ basedir?相反,如果我可以将database.mv.db放在资源文件中,并且这不会阻止我写入,那就更好了(因为我知道我们不能写入.jar包内的文件)
答案 0 :(得分:0)
首先,免责声明:我是javafx-maven-plugin的维护者
要回答我们的问题,您可能希望升级到当前版本的javafx-maven-plugin并使用特殊的<additionalAppResouces>
- 属性,该属性需要一些路径,其中存储了所有其他文件。< / p>
请将您的database.mv.db
放入某个文件夹,然后说src/main/database
并将其添加到您的插件配置中:
<additionalAppResouces>src/main/database</additionalAppResouces>
。
如果您想在调用mvn jfx:run
或mvn jfx:jar
时复制该文件,请将其添加到您的插件配置中:<copyAdditionalAppResourcesToJar>true</copyAdditionalAppResourcesToJar>
在回答这个问题时,我发现这个属性(可用很长时间),src/it
内没有任何示例项目(所有测试项目都存储在这里),对不起。< / p>