草庐IT

java - 使用 JNA 的 C 回调使 JRE 崩溃

我在处理JNA中的回调时遇到问题。我正在尝试使用一个使用回调来处理多个session事件(登录、注销、连接问题...)的CAPI。session对象(称为sp_session)是一个不透明的结构。所有回调都在sp_session_callbacks结构中注册。根据API,我应该声明回调对象,并将其放入我将在创建sp_session对象时提供的Config对象中。如果我不想使用某些回调,我应该用null初始化它们。API使用__stdcall调用约定。这是与我的问题相关的Cheader片段:#defineSP_CALLCONV__stdcalltypedefstructsp_sessio

java - 如何在 Eclipse 中更改工作区 JRE

在Eclipse中创建新的Java项目时,我收到以下警告“当前工作区使用1.4JRE...”我的系统上有JRE7。我在eclipse.ini中添加了以下行-vmC:\Java\jre7\bin\javaw.exe我已将JRE7添加到InstalledJREs通过Windows->Preferences->InstalledJREs。仍在Compiler选项卡下,我只能看到compilercompliancelevel直到6。如何将工作区JRE更改为JRE7? 最佳答案 Java7支持仅在EclipseIndigoSR1之后可用(大约

java - 为什么每个 JDK 都带有 3 个 JRE?

我注意到在C:\ProgramFiles\Java文件夹中,有JDK安装的公共(public)JRE,我知道这是正常的。但是还有jdk1.x\jre\bin\文件夹,里面有java.exe、javaw等。然后是编译器文件夹jdk1.x\bin,其中包含javac以及JRE中包含的所有其他文件,如java.exe、javaw、appletviewer等为什么JDK会附带所有这些JRE?这三者有什么区别? 最佳答案 Sun/Oracle在此处记录JDK目录组织:http://docs.oracle.com/javase/6/docs/t

java - Desktop.open() 在某些 JRE 上静默失败

我正在尝试使用Desktop在Windows上打开本地HTML文件的类。但它仅适用于某些特定的JRE,不适用于其他一些JRE。这是我的代码:try{if(Desktop.isDesktopSupported()){Desktopdesktop=Desktop.getDesktop();if(desktop.isSupported(Desktop.Action.OPEN)){desktop.open(newFile("test.html"));}else{thrownewException("OPENactionnotsupported");}}else{thrownewExceptio

java - 如何让 JRE 与 launch4j 捆绑在一起?

我知道launch4j不会将JRE捆绑在.exe中,但您必须将它放在它旁边。我的问题是,我该怎么做?有没有办法让Maven自动定位和复制我用来构建应用程序的JDK的JRE,并将其复制到给定目录?我试过这样做:maven-resources-plugin2.6copy-resourcespackagecopy-resources${basedir}/target/windows/jre${java.home}但是程序没有启动。它显示了一个立即消失的小对话框(它似乎是空白的,但它消失得太快以至于我没有真正注意到它)。 最佳答案 更新:删

java - Ant 找不到 Javac。无论我做什么,它总是声称 JAVA_HOME 是 "C:\Program Files\Java\jre6"

...这是错误的。这是我得到的错误:构建失败C:_TraderPlatform\Clients\Open\Open\Java\Applets\PPDataTransporter\nbproject\build-impl.xml:338:执行此行时出现以下错误:C:_TraderPlatform\Clients\Open\Open\Java\Applets\PPDataTransporter\nbproject\build-impl.xml:158:无法找到javac编译器;com.sun.tools.javac.Main不在类路径中。也许JAVA_HOME没有指向JDK。目前设置为“C

java - 编译为 1.5 编写的 Java 代码以使用 1.4 JRE?

我有一个项目使用泛型和一些Java1.5/6零碎的东西。是否可以编译此代码以在运行1.4JRE的系统上运行?我使用ANT构建脚本和javac任务来编译库。这在目标属性为1.5时构建良好。如果我将目标更改为1.4,我会收到以下错误:genericsarenotsupportedin-source1.4(use-source5orhighertoenablegenerics)所以我添加了一个源属性并尝试了5和1.5的值。新错误:javac:sourcerelease5requirestargetrelease1.5我是否必须检查我的所有代码并更改1.5的内容才能使其正常工作?

Java - 无论 JRE 版本如何,查找正在使用的 tzdata 版本

我们有一个简单的实用程序应用程序,它读取JRE中使用的所有时区数据并将其全部显示在一个简单的表格中。我们需要为即将发布的产品版本使用旧版本的JRE(6_24)(显然是由于其他问题),但我们还需要在该版本中包含较新的时区更新(否则将包含在6_29中)).我们已经打包了一个将要安装的私有(private)JRE,因此使用TZUpdatertool将时区更新更新到该私有(private)JRE中。不是问题-问题是读取/验证哪个版本的tzdata(例如tzdata2010o、tzdata2011k)正在使用实用程序读取(即运行该应用程序的JRE中使用的是哪个版本)。该应用目前在标题栏中显示JR

java - deployJava.js 未在 IE 11 中检测到 JRE

我正在使用deployJava.js来包含像这样的小程序:varattributes={name:'ForrestGump',id:'ForrestGump',codebase:'java/',code:'ForrestGump',cache_archive:'ForrestGumpSigned.jar',cache_option:'Plugin',initial_focus:false,width:1,height:1};varparameters={};varversion='1.7.0';deployJava.runApplet(attributes,parameters,ver

java - 如何编写 JavaScript 函数来检查 JRE 版本

我是JavaScript新手。如何编写返回计算机中已安装Java版本的JavaScript函数。谢谢苏尼尔·库马尔·萨胡 最佳答案 使用JNLP,theSunUnifiedDeploymentMechanism,getJREs()函数就是您的答案:varversions=deployJava.getJREs();alert(versions);注意它以跨各种浏览器的一致方式工作 关于java-如何编写JavaScript函数来检查JRE版本,我们在StackOverflow上找到一个类似