首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以安装Windows驱动程序,也可以将dll和jar复制到Java中吗?

可以安装Windows驱动程序,也可以将dll和jar复制到Java中吗?
EN

Stack Overflow用户
提问于 2013-03-06 21:19:32
回答 2查看 1K关注 0票数 2

我的Java FX2应用程序配置一个串行设备,作为部署的一部分,它必须安装一个RxTx设备驱动程序,并将本机libs (RxTx串行端口库)复制到Java中。

能处理吗?或者用户应该分阶段完成:手动安装驱动程序,然后复制libs,然后通过Web安装应用程序。

更新:下面的 MyApp.jar是自签名的.我将dll放在项目名称下。我在jnlp中为dll添加了这一行。我使用的是Netbeans 7.3,所以把VM行放进去。我的jnlp看起来是这样的:

代码语言:javascript
复制
  <resources>
    <j2se version="1.6+" java-vm-args="-Djava.library.path=. "  href="http://java.sun.com/products/autodl/j2se"/>
    <jar href="MyApp.jar" size="216992" download="eager" />
    <jar href="lib/RXTXcomm.jar" size="66493" download="eager" />
    <nativelib  href="rxtxSerial.dll" size="122880" download="eager" />
  </resources>
<security>
  <all-permissions/>
</security>

我可以在Netbeans IDE中运行这个应用程序。但是,单击jnlp,我会得到弹出的“运行时错误”。它要求我点击详细信息,但没有显示任何细节。我删除了之前在Java控制面板中的临时Internet文件中的jnlps。在Java控制台中,我什么也没看到。

@AndrewThompson我试过Janela检查jnlp。有用的工具!我看到dll没有进入dist文件夹。jnlp由NB 7.3生成。有什么办法可以让它进入本土的行列吗?每次我都要手工操作。`

JaNeLA报告- 11.05.17版 file:/D:/Profiles/Anil/My%20Documents/NetBeansProjects/MyApp/dist/MyApp.jnlp报告 内容类型application/xml不等于预期类型的application/xml文件cvc-complex.2.4.a:从元素‘jfx:javafx-运行时’找到无效的内容。一个'{java,j2se,jar,nativelib,扩展名,属性,包}‘是预期的。找到无效的内容,从元素‘jfx:javafx-运行时’开始。一个'{java,j2se,jar,nativelib,扩展名,属性,包}‘是预期的。2.4.a:找到无效的内容,从元素'security‘开始。“{resources,application-desc,applet-desc,component-desc,installer-desc}”之一是预期的.2.4.a:找到无效的内容,从元素'security‘开始。“{resources,application-desc,applet-desc,component-desc,installer-desc}”之一是预期的.XML编码不知道,但声明为utf-8代码基未指定。默认为file:/D:/Profiles/Anil/My%20Documents/NetBeansProjects/MyApp/dist/,可以通过删除下载=‘MyApp.jar’的(默认值)值来优化MyApp.jar上的资源下载。可以通过删除main='false‘的(默认值)值来优化MyApp.jar上的资源下载。优化应用程序的启动可能是可能的。通过为MyApp.jar资源指定download=‘惰性’。除非指定了下载“部件”,否则延迟下载可能不会像MyApp.jar预期的那样工作。资源'lib/RXTXcomm.jar‘声明为'66490’,但实际上是'66512‘。在lib/RXTXcomm.jar中的资源下载可以通过删除下载=‘急切’的(默认值)值来优化。可以通过删除main='false‘的(默认值)值来优化lib/RXTXcomm.jar中的资源下载。优化应用程序的启动可能是可能的。通过为lib/RXTXcomm.jar资源指定download=‘懒惰’。对于lib/RXTXcomm.jar,除非指定了下载“部件”,否则延迟下载可能无法正常工作。获取资源rxtxSerial.dll的问题。D:\Profiles\Anil\My Documents\NetBeansProjects\MyApp\dist\rxtxSerial.dll (系统找不到指定的文件)

我将dll放入一个jar中,并添加了同样失败的System.loadLibrary("./rxtxSerial");

EN

回答 2

Stack Overflow用户

发布于 2013-03-07 11:09:28

只要您停留在沙箱中(未签名的应用程序),您将无法访问本地文件系统。关于设备驱动程序的安装,我认为签名的应用程序也能做到这一点,但它可能会触发Windows确认。

请参阅http://docs.oracle.com/javase/tutorial/deployment/doingMoreWithRIA/security.html

票数 0
EN

Stack Overflow用户

发布于 2013-03-11 15:24:20

这起作用的是

使用更简单的方法(确认在使用NetBeans或Borland JBuilder时工作): 将RXTXcomm.jar添加为库 编译(构建)应用程序 使用(projectname/dist ()时,将rxtxSerial.dll添加到分发文件夹的根目录

来自wiki RXTX

在jnlp中放置“nativelib”指令的建议(来自Andrew)是行不通的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15258288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档