java - Java在Maven项目中找不到库
问题描述
我在 Eclipse 中有 Java maven 项目:
我在 pom.xml 文件中包含了所需的依赖项并刷新了alt+F5
。我did maven build compile
没有错误。但是当我尝试运行文件时,看起来 java 无法从库中加载所需的类:java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path 在加载 gnu.io.RXTXCommDriver 时抛出
Exception in thread "main" java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83)
at main.TwoWaySerialComm.connect(TwoWaySerialComm.java:20)
at main.TwoWaySerialComm.main(TwoWaySerialComm.java:107)
如何解决?
解决方案
您需要使用以下 JVM 参数运行您的应用程序:
Linux:-Djava.library.path=/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/librxtxSerial.so
视窗:java -Djava.library.path= "your dll path"
JVM 参数在 java 命令之后和应用程序主类或带有主类的 jar 之前传递。
推荐阅读
- javascript - 流畅刷新页面
- angular - Angular、TypeScript 中的实时 HTML 表单验证 (onBlur)
- scala - Scala:阅读器内部带有防护功能的理解
- bash - 对除 Bash 中的文本以外的数值进行排序
- flutter - 在 TextFormField 中写入时 UI 崩溃
- javascript - React JS - 获取当前可见的数组中的所有 dom 元素 id
- css - 如何覆盖填充:0;来自萨斯?
- angular - Angular:父组件中子组件的valueChanges以使用switchmap
- android - iOS 和 Android 上的 Kotlin/Native Garbage 收集
- java - 无法解析构造函数“BaseBar(java.time.ZonedDateTime, java.lang.Double)”?