繁体   English   中英

系统范围Jar抛出类未找到异常

[英]System Scope Jar Throws Class Not Found Exception

我的项目使用javafx jar,并通过maven中的系统范围将其包括在内。 在我当地的地方效果很好。 现在,由于该jar包含在系统范围内,因此它不包含在胖jar中,当我部署该胖jar时,它将为javafx类提供ClassNotFound Exception。 为什么javafx也位于该机器的同一个lib文件夹中,所以为什么无法访问我部署了该项目的机器上的javafx jar?

PS:我将javafx jar手动复制到JAVA_HOME / lib /文件夹中的该计算机上。

更新:刚刚注意到从本地运行jar会抛出该错误,尽管从eclipse运行良好。

发生这种情况可能有多种原因:

1.)在javafx jar中复制时,权限错误,因此运行Java程序的进程无法读取它。

2.)运行Java程序的用户的类路径上没有JAVA_HOME / lib文件夹。 如果您以服务级别用户的身份运行程序,但以另一个用户身份安装了Java,则会发生这种情况。 有时,可能未在其个人资料中为其他用户设置JAVA_HOME。

3.)不同版本的目标jar可能会移动类,以使版本1.0可以运行,但是2.0将导致找不到类的异常,因为该类已被移至新软件包。 确保两个地方都有相同版本的javafx jar。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM