Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在部署应用程序时,将嵌入式包含在Maven javaFX项目中_Java_Maven_Deployment_Javafx - Fatal编程技术网

在部署应用程序时,将嵌入式包含在Maven javaFX项目中

在部署应用程序时,将嵌入式包含在Maven javaFX项目中,java,maven,deployment,javafx,Java,Maven,Deployment,Javafx,我有一个javaFX Maven项目,其结构如下: BaseDir_ |--src_ | |-- Main | | |-- java | | |-- resources_ | | | setting.xml | |--Test |--database.mv.db

我有一个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>
com.zenjava
javafxmaven插件
8.1.4
main.main应用程序
EnterpriseLimited.jar
我的公司
创建jfxjar
包裹
构建jar
创建本地
包裹
构建本地
在执行build jar和build native目标之后,我没有找到“database.mv.db”文件,我如何告诉maven将“database.mv.db”放在里面
$basedir?。相反,如果我可以将database.mv.db放在资源文件中,并且这不会阻止我写入,那就更好了(因为我知道我们不能写入.jar包中的文件)

首先,dislaimer:我是javafx maven插件的维护者

为了回答我们的问题,您可能需要升级到javafx maven插件的当前版本,并使用特殊的
-属性,该属性需要一些路径,所有附加文件都存储在该路径中

因此,请将您的
database.mv.db
放入某个文件夹,比如
src/main/database
,并将其添加到您的插件配置中:
src/main/database

如果您想在调用
mvnjfx:run
mvnjfx:jar
时复制该文件,请将其添加到您的插件配置中:
true

在回答这个问题时,我发现这个属性(可用时间很长)在
src/it
(存储所有测试项目的地方)中没有任何示例项目,对此表示抱歉