草庐IT

jconsole-jdk

全部标签

java - Maven 项目对 JDK 版本的依赖

我有需要使用特定版本的JDK构建的项目。问题不在于源参数和目标参数,而在于编译期间使用的运行时的jars。在某些情况下,如果我尝试使用错误的JDK进行编译,则会出现编译错误,但有时构建会成功,但在使用jars时会出现运行时错误。例如,在eclipse中,我可以在.classpath文件中为项目建立执行环境。有没有办法在maven中处理这种情况?我想要的是能够像POM文件中的项目的其他依赖项一样处理JRE依赖项。更新:当我问这个问题时,公认的解决方案是最好的,所以我不会改变它。同时引入了针对此类问题的新解决方案:MavenToolchain.点击链接了解更多详情。

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 - 谁能向我解释 tools.jar(捆绑在 jdk/lib 文件夹中)的功能以及为什么需要它?

我在java中遇到了tools.jar文件。所以,想知道它到底是做什么用的?我搜索了很多但找不到文档。如果有人可以为我指定它的详细信息,那将非常有帮助,因为我是java的新手。谢谢。 最佳答案 在tools.jar中是JDK而非JRE需要的所有工具。包含在tools.jar中的是例如编译器javac和工具javadoc。此.jar文件中包含用Java开发所需的所有工具。 关于java-谁能向我解释tools.jar(捆绑在jdk/lib文件夹中)的功能以及为什么需要它?,我们在Stack

java - java 1.8 上的 maven-enunciate-plugin 作为 apt 现在已从最新的 JDK(即 java 注释处理工具)中删除

问题是如何让java1.8和maven-enunciate-plugin协同工作?使用Maven插件org.codehaus.enunciateversion1.29和OSXJDK1.7.0_25一切都很好。Enunciate依赖于apt,我在1.7.0_25中看到了这个运行时警告[INFO]invokingenunciate:generatestep...warning:TheapttoolanditsassociatedAPIareplannedtoberemovedinthenextmajorJDKrelease.Thesefeatureshavebeensupersededby

java - 不同的 java JDK 文件 : default-java , java-1.8.0-openjdk-amd64 , java-8-openjdk-amd64 , java-8-oracle 之间有什么区别

它们都在我的ubuntu机器的/usr/lib/jvm/..文件中。有人可以解释这4个文件之间的区别以及为什么名为java1.8.0_91的文件不被视为JDK吗?我在为androidstudio寻找JDK时遇到了这些文件。 最佳答案 这些目录中的大部分是symlinks对彼此。您可能安装了两个JDK/JRE:OpenJDK和OracleJDK。参见here和here了解OpenJDK/OracleJDK之间以及JDK和JRE之间的区别。java1.8.0_91可能是JRE,不是JDK。

java - 防止在 jdk6 中将无效日期转换为下个月的日期?

考虑片段:StringdateStr="MonJan3200:00:00IST2015";//32Jan2015DateFormatformatter=newSimpleDateFormat("EMMMddHH:mm:ssZyyyy");DateFormatddMMyyyy=newSimpleDateFormat("dd.MM.yyyy");System.out.println(ddMMyyyy.format(formatter.parse(dateStr)));给我输出为01.02.2015//IstFebruary2015我想阻止这种情况,让用户在UI上意识到这是一个无效日期?有什

java - 带有 JDK10 SDK 的 IntelliJ 不编译带有 1.8 目标的 Maven 项目

考虑Maven项目中的以下代码:importorg.w3c.dom.css.CSSStyleDeclaration;publicclassTest{publicstaticvoidmain(String[]args){CSSStyleDeclarationstyleDeclaration=null;}}在哪里pom.xml包含maven-compiler-plugin插件4.0.0me.serce.jdk10mvntestjdk10mvntest1.0-SNAPSHOTorg.apache.maven.pluginsmaven-compiler-plugin3.7.01.81.8这个项

java - 如何让Maven使用JDK1.8而不是JDK1.6

我是maven的新手,我发现虽然我把项目的jdkfacet改成了1.8,但是每次“更新maven”,它都会回到jdk1.6。这是为什么?我在我的windows上安装了jdk1.8,我正在使用eclipse。我读了SpecifyJDKforMaventouse并添加以下但它不起作用。org.apache.maven.pluginsmaven-enforcer-pluginenforce-versionsenforce1.8 最佳答案 maven将使用的JDK版本在maven-compiler-plugin中设置如下:maven-com

java - sun.security.x509.CertAndKeyGen 和 sun.security.pkcs.PKCS10 - 在 JDK8 中缺失。实现建议

在JDK8中,类sun.security.x509.CertAndKeyGen不再存在。还缺少sun.security.pkcs.PKCS10。在JDK7中它们存在。什么可以替代这些类方法? 最佳答案 我想您正在寻找:sun.security.tools.keytool.CertAndKeyGen您会在JRE库下的rt.jar中找到它。记住这个类在J2SE之外,它可能只适用于OpenJDK,例如GNUCompiler不会有的。 关于java-sun.security.x509.CertA

Java JDK 8 IndexedPropertyDescriptor 自 JDK 7 以来已更改为 List 对象

我有一个简单的问题。我有一个在JavaJDK7中工作的程序,但由于一些内省(introspection)更改,它在JDK8中不起作用。这是一个重现问题的测试程序:importjava.beans.BeanInfo;importjava.beans.IntrospectionException;importjava.beans.Introspector;importjava.beans.PropertyDescriptor;importjava.util.ArrayList;importjava.util.List;publicclassMain{publicstaticvoidmain