使用jfx import

时间:2019-06-24 09:10:41

标签: java maven javafx

我使用maven生成了具有依赖关系的“包” .jar,但是在部署时,部署它的开发人员会遇到以下错误:

10:23:27.604 [http-nio-8080-exec-1] DEBUG org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver - Resolving exception from handler [public org.springframework.http.ResponseEntity<?> company.Api.convertXmlToPdf(javax.servlet.http.HttpServletRequest)]: org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: javafx/util/Pair
10:23:27.606 [http-nio-8080-exec-1] DEBUG org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver - Resolving exception from handler [public org.springframework.http.ResponseEntity<?> company.Api.convertXmlToPdf(javax.servlet.http.HttpServletRequest)]: org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: javafx/util/Pair
10:23:27.606 [http-nio-8080-exec-1] DEBUG org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver - Resolving exception from handler [public org.springframework.http.ResponseEntity<?> company.Api.convertXmlToPdf(javax.servlet.http.HttpServletRequest)]: org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: javafx/util/Pair

.jar文件似乎不包含对javafx / util / Pair的任何依赖。

我尝试使用maven添加依赖项,将lib添加到项目中:

    <dependency>
        <groupId>javafx</groupId>
        <artifactId>jfxrt</artifactId>
        <version>2.2.3</version>
        <scope>system</scope>
        <systemPath>${project.basedir}/lib/jfxrt.jar</systemPath>
    </dependency>

不起作用。

我尝试添加

    <plugin>
            <groupId>com.zenjava</groupId>
            <artifactId>javafx-maven-plugin</artifactId>
            <version>8.8.3</version>
            <configuration>
                <mainClass>hermes.Api</mainClass>
            </configuration>
    </plugin>

在我的构建配置(pom)中。也不起作用...

在本地测试时,它运行良好,所有测试都通过了,我得到了结果。当使用maven构建软件包生命周期时,构建成功。但是,部署后,我遇到了上面提到的错误,例如找不到Pair类...

开发者机器和部署机器都在使用

java版本“ 1.8.0_171”
Java(TM)SE运行时环境(内部版本1.8.0_171-b11)
Java HotSpot(TM)64位服务器VM(内部版本25.171-b11,混合模式)

(部署机器使用的是_172版本...)

编辑:这不是解决问题的方法,但是由于代码中使用的javafx的唯一部分是Pair,所以我用AbstractMap.SimpleEntry替换了它,它与Pair几乎相同。我希望这可以帮助某人...

0 个答案:

没有答案