Articles of java 7

在linux下安装jdk 1.7时出错

当我在Oracle Linux中安装jdk 1.7时,使用以下命令 rpm -ivh jdk-7u9-linux-i586.rpm 但是我收到以下错误,我该如何解决这些错误并安装JDK 1.7? 任何帮助是非常可观的。 谢谢 rpm -ivh /tmp/mnt/jdk-7u9-linux-i586.rpm Preparing… ########################################### [100%] 1:jdk ########################################### [100%] Unpacking JAR files… rt.jar… Error: Could not open input file: /usr/java/jdk1.7.0_09/jre/lib/rt.pack jsse.jar… Error: Could not open input file: /usr/java/jdk1.7.0_09/jre/lib/jsse.pack charsets.jar… Error: Could not open input file: /usr/java/jdk1.7.0_09/jre/lib/charsets.pack tools.jar… Error: Could not open input file: /usr/java/jdk1.7.0_09/lib/tools.pack localedata.jar… […]

com.sun.tools.attach.AttachNotSupportedException:无法打开套接字文件:目标进程没有响应或HotSpot虚拟机未加载

在linux(ubuntu 64bit)上运行jmockittesting时,我得到AttachNotSupportedException 。 Java版本是1.7.0_51。 这个JDK来自Oracle。 testing使用ant运行(可能不相关) 查看堆栈跟踪。 [junit] [junit] java.lang.RuntimeException: com.sun.tools.attach.AttachNotSupportedException: Unable to open socket file: target process not responding or HotSpot VM not loaded [junit] at mockit.internal.startup.JDK6AgentLoader.getVirtualMachineImplementationFromEmbeddedOnes(JDK6AgentLoader.java:89) [junit] at mockit.internal.startup.JDK6AgentLoader.loadAgent(JDK6AgentLoader.java:54) [junit] at mockit.internal.startup.AgentInitialization.initializeAccordingToJDKVersion(AgentInitialization.java:21) [junit] at mockit.internal.startup.Startup.initializeIfNeeded(Startup.java:136) [junit] at mockit.internal.startup.Startup.initializeIfPossible(Startup.java:169) [junit] at junit.framework.TestResult.<clinit>(TestResult.java:15) [junit] at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:356) [junit] at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1165) [junit] at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1016) [junit] Caused by: […]

Java线程优先级不起作用

这是一个关于线程优先级的testing。 代码来自Thinking in Java p.809 import java.util.concurrent.*; public class SimplePriorities implements Runnable { private int countDown = 5; private volatile double d; // No optimization private int priority; public SimplePriorities(int priority) { this.priority = priority; } public String toString() { return Thread.currentThread() + ": " + countDown; } public void run() { Thread.currentThread().setPriority(priority); while (true) […]

Java 7默认语言环境

我刚刚安装了jre7,我很惊讶地发现我的默认语言环境现在是en_US。 用jre6它是de_CH。 与jre7有什么不同? 缺省语言环境不再是操作系统的一个吗? (顺便说一下,我使用Windows7) Thx为您的答案。 编辑:我已经看到Category.FORMAT的语言环境是“旧”(de_CH)。 Category.DISPLAY的语言环境采用操作系统语言的语言(在Windows中,这在控制面板>区域和语言>键盘和语言>显示语言中完成)以及来自…的条件? 看起来不同的是“ user.country ”属性。 随着Java6我得到“CH”和Java7我得到“美国”。

VM初始化期间发生错误(java / lang / NoClassDefFoundError:java / lang / Object)

我试图安装Java来使用Eclipse(我遵循所有的说明来安装Java和Eclipse),但我的Eclipse没有启动,因为我想一些错误的configuration。 我无法弄清楚为什么它不适合我。 Eclipse安装: 在C:\eclipse提取Eclipse 创build一个目标C:\eclipse\eclipse.exe桌面快捷方式 当我尝试使用此快捷方式运行Eclipse时,我看到以下Eclipse启animation面一秒钟,然后消失。 Eclipse根本不启动。 JAVA安装: 在C:\Program Files\Java\jdk1.7.0_10安装了JDK 在C:\Program Files\Java\jre7安装了JRE 环境variablesconfiguration: JAVA_HOME = C:\Program Files\Java\jdk1.7.0_10 PATH = C:\Program Files\Java\jdk1.7.0_10\bin; 我testing了我的Java安装使用控制台,并找出了这个问题,但我不知道如何解决它,我想这是导致Eclipse不启动。 问题:

Java7的WatchService – 访问拒绝错误试图删除recursion观看的嵌套目录(仅限Windows)

我跟着看了更改目录 Java7 nio2教程recursion监视使用代码示例WatchDir.java目录的全部内容。 虽然在Linux和Mac上,在Windows上(在Vista和7上testing过),在Windows上尝试删除嵌套的监视文件夹失败,并显示类似于“访问被拒绝:您需要执行此操作的权限”存在于其中一个嵌套目录中。 例如,如果我在Windows中观看嵌套的文件夹树: — Folder A — Folder A1 — File F 并尝试删除文件夹A,我得到说拒绝访问错误。 但是,如果我: 删除文件夹A1,然后删除文件夹A. 删除文件F,然后删除文件夹A. 有没有办法使用nio2 WatchServicerecursion地观看一个嵌套的目录,但不能像一个程序访问嵌套文件一样行事?

指定的JRE安装不存在

我试图在我的eclipse indigo EE的tomcat 7上启动服务器 我得到以下错误: “'在本地主机启动Tomcat v7.0服务器'遇到了问题。 指定的JRE安装不存在“ 我检查了构buildpathconfiguration和我有的库部分 JDK7作为JRE系统库和当我检查“已安装的JRE …”正确 有path – “C:\ Program Files \ Java \ jdk1.7.0_01”。 还有什么可以做的? 非常感谢。 PS – 我也使用maven 3.0.3

为什么我不能closures从maven插件embedded的tomcat 7?

我正在使用tomcat7-maven-plugin 2.2从命令行运行一个webapp(我在Windows 8.1,Java 1.7.0_51和Maven 3.2.1上)。 这是configuration(很简单,我猜): <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <address>localhost</address> <port>8080</port> <path>/</path> <uriEncoding>UTF-8</uriEncoding> </configuration> </plugin> 我使用mvn tomcat7:run运行Maven mvn tomcat7:run并正确启动,服务器启动, mvn tomcat7:run应用程序加载,我可以与之交互。 我运行Maven的命令提示符正忙于显示Tomcat输出(对我来说这看起来很好): [INFO] Scanning for projects… [INFO] [INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1 [INFO] [INFO] ———————————————————————— [INFO] Building <project-name-here> 0.3 [INFO] ———————————————————————— [INFO] [INFO] >>> tomcat7-maven-plugin:2.2:run (default-cli) @ […]

用于跟踪Java中文件更改的文件ID?

我试图find一种方法来跟踪文件,即使它们在文件系统中被移动或重命名。 我想到的一个想法是在Java 7中使用新的UserDefinedFileAttributeView,并创build一个自定义文件属性作为一种自定义ID。 我认为这可能适用于不同的平台(主要是Windows和Mac)。 但是我无法让它工作。 甚至尝试在这个页面上的例子 – http://docs.oracle.com/javase/tutorial/essential/io/fileAttr.html – 当我到这一行: UserDefinedFileAttributeView view = Files.getFileAttributeView(file,UserDefinedFileAttributeView.class); 我只得到一个null值的视图variables,然后程序停止与一个空指针exception。 然后,我发现至less有一个可能更简单的方法来使用Mac:使用BasicFileAttributes fileKey属性。 我试过这个,即使我移动文件或重命名它,fileKey似乎也保持不变。 然而,它也说这个function是依赖于平台的,而且我记得在某个地方,它不能在Windows上工作。 所以首先,fileKey方法是在Mac上这样做的一个稳定的方法? 如果是这样,我可以做什么用于Windows相同的function? 任何人都知道为什么我在UserDefinedFileAttributeView上得到空值? 因为如果我能做到这一点,我猜应该是跨平台的。 这不是需要超级健壮和可伸缩的东西,它只是我正在开发的一个小型帮助器应用程序,但是在移动或重命名文件时至less需要可靠的识别文件。

无法安装JDK 7

我可以安装JRE 7没有任何问题。 但是,当我尝试安装JDK 7时,没有任何反应。 我目前正在运行Win7 64位。 当我双击下载的文件时,会popup一个对话框询问我是否要运行该应用程序,然后单击“运行”,然后什么都不会发生。 我甚至没有收到错误信息。 JDK 6安装就好了。 我试图卸载所有版本的Java,并安装JDK 7,但同样的事情发生。 我甚至在另一台电脑上安装了JDK 7,然后使用该文件尝试安装在我的笔记本电脑上,但同样的事情发生。 有任何想法吗?