草庐IT

java - 通过命令行在 Windows 机器上静默安装 JDK 8 和 JRE 8

我们想在多台机器上更新JDK环境,都运行windows但是版本不同(XP或者7)为此,我现在正在创建一个脚本,它将自动运行正确的安装程序(32/64位)。我尝试使用以下命令运行安装程序:jdk-8u25-windows-x64.exe/sADDLOCAL="ToolsFeature,SourceFeature,PublicjreFeature"这在没有安装JDK/JRE8的机器上运行良好。但是,我遇到了一些问题:如果JDK/JRE8已经安装,安装程序会同时卸载JDK和JRE,而不是什么都不做(或重新安装)如果需要重新启动,它会自动强制执行,我需要避免这种情况,因为在安装完成后我需要在脚

java - 使用 JDK 1.6 时,我的 Web 应用程序中是否需要 stax-api-1.0.x?

我目前正在开发一个使用JerseyforREST的网络应用程序。我使用maven,stax-api-1.0.1和1.0.2都被拉入我的web-inf/lib。我以为staxapi是JDK1.6的aprt?为什么这些JARS包含在我的Web应用程序中?这是我的pom.xml4.0.0com.glennbechsimplerestwar1.0-SNAPSHOTSimplerestMavenWebapp.VerysimpleREST.http://maven.apache.orgcom.sun.jerseyjersey-server1.9com.sun.jerseyjersey-json1.

java - ibm jdk和oracle jdk有什么区别?

我正在编写将在AIX服务器上运行的Java代码。我想知道IBM的JDK和Oracle的JDK之间的区别,以及JDK是否具有相同的类。IBMJDK是否具有OracleJDK中存在的所有类?是否有任何IBM文档描述这两个JDK之间的差异? 最佳答案 Oracle和IBMjava运行时之间的最大区别在于它们具有独立的Java虚拟机(JVM)和即时(JIT)编译器实现。IBM需要构建自己的JVM和JIT,以便在z/OS(大型机)、AIX和LinuxonPower处理器等平台上运行Java程序,而其他Java实现无法在这些平台上运行。JVM和

java - 使用不同版本的 JDK 和相同的目标和源版本编译 Java 是否保证相同的执行?

我们将更新我们的CI系统,该系统创建从Java7到Java8的构建。稍后我们想将项目一个一个地迁移到Java8。当然,我们希望能够为仍然使用Java7的旧版本创建错误修复版本。如果我们将构建相同的源、目标版本和源版本从JDK7转移到JDK8,我们能确定不会出现问题吗?我们在开发机器上进行了测试,没有任何问题。在此之前,我们也在逐步将部署服务器从JRE7更新到JRE8。请注意,我们希望在CI系统上保留单个JavaJDK安装,否则会变得很复杂。为了更清楚:我对相同的执行结果更感兴趣,而不是相同的字节码。如果我理解正确的话,相同的字节码只会确认第一个(在相同的JRE上运行)。在所有部署都运行

java - Maven 在 jenkins 上使用错误的 JDK 构建

当我尝试运行我的JenkinsMaven作业时,出现以下错误:[ERROR]Failedtoexecutegoalorg.apache.maven.plugins:maven-compiler-plugin:3.1:compile(default-compile)onprojectmyProject:Fatalerrorcompiling:invalidtargetrelease:1.8->[Help1]这表明Maven使用Java1.8,但它应该使用Java1.7。我在Debug模式下运行Maven,它显示了正确的版本:...ApacheMaven3.0.5(r01de14724cd

java - 为什么 JDK 1.4 和 1.5 的输出不同?

我在JDK1.4和1.5上运行这段代码并得到不同的结果。为什么会这样?Stringstr="";inttest=3;str=String.valueOf(test);System.out.println("str["+str+"]\nequalsresult["+(str=="3")+"]");if(str=="3"){System.out.println("if");}else{System.out.println("else");}输出:在jdk1.4上str[3]equalsresult[true]if在jdk1.5上str[3]equalsresult[false]else

java - 使用 JDK 8 编译但针对 JRE 7 的 ConcurrentHashMap 崩溃应用程序

我今天遇到了一个非常意外的错误,虽然我能够找到一种方法来解决整个问题,但我不确定我是否完全理解它为什么会这样做。我正在使用的代码最初是用JDK7环境编写的,当然是针对JRE7的。在代码中,我使用了ConcurrentHashMap。并且需要迭代map中的键。为此,我使用了map.keySet()根据JavaDocs应该返回Set.在我们的构建环境切换到JDK8之前,这一切都很好。当我们迁移到JDK8时,我确保在调用javac时调用1.7的目标/源。所以当代码想要遍历map的键时开始失败时,我感到非常惊讶。没有抛出错误,没有异常,线程只是简单地停止了。在做了一些研究之后,我发现Java8

java - 在模块路径上使用 OpenJFX 11 JMODS 在 JDK 11 上运行 javafx 示例

我已经从OpenJFX项目下载了JavaFXJmod文件并将它们放在目录G:\openjfx\javafx-jmods-11中。我正在使用OpenJDK11,它在JAVA_HOME/jmods中没有JavaFXjmod,即它没有随JavaFX发行版一起提供。模块信息文件:modulegui{requiresjavafx.graphics;requiresjavafx.controls;exportscom.test;}我编译如下:javac-pG:\openjfx\javafx-jmods-11-dmods--module-source-pathsrcsrc\gui\com\test\

java - 在哪里可以找到特定版本的 IBM JDK/JRE for Windows?

我正在尝试获得一个与Websphere一起工作的对JDK相当敏感的Oracle软件,我需要找到一些特定版本的IBMJDK来尝试。问题是IBM并没有真正像Sun/Oracle那样提供这些工具,而且我能得到的所有版本都因为这样或那样的原因而无法使用。具体来说,我需要以下之一:适用于Windows的IBMJava5SR9(理想)适用于Windows的IBMJava5SR2适用于Windows的IBMJava5SR10我怎样才能直接从IBM获得这些?我的公司有Websphere的支持契约(Contract),如果我能告诉他们去哪里,我希望能让我们的一位Websphere工程师下载它。

eclipse - 如何在 JDK 中启动 eclipse?

我第一次只是在eclipse中安装了一个Maven插件。现在有关于eclipse启动的消息,我应该在JDK中启动eclipse而不是jre以使Maven组件运行良好。我在eclipse.ini中使用了一个-vm参数:-vmC:\ProgramFiles(x86)\Java\但是重启后信息还在。我试过:C:\ProgramFiles(x86)\Java\bin还有:C:\ProgramFiles(x86)\Java\bin\java.exe但没有任何改变。如何在JDK中启动eclipse?提前致谢。 最佳答案 如果您使用的是Windo