Questions tagged «java-7»

Java SE版本7于2011年发布。与版本6相比,新功能包括动态语言支持,压缩指针,小语言扩展,椭圆曲线加密,新的网络协议,在字符串中使用字符串作为大小写值的功能。 switch语句,以及各种系统库扩展。


5
无效的目标版本:1.7
我见过类似的问题,但尚未找到答案。 使用Maven编译,我得到: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project api: Fatal error compiling: invalid target release: 1.7 -> [Help 1] 这是pom.xml: <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.0</version> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> </configuration> </plugin> Javac版本: javac 1.7.0_25 Java版本: java version "1.7.0_25" Java(TM) SE Runtime Environment (build 1.7.0_25-b15) Java HotSpot(TM) 64-Bit Server …
121 java  maven  java-7 

3
PermGen和Metaspace有什么区别?
直到Java 7为止,JVM内存中都有一个称为PermGen的区域,JVM用来保留其类。在Java 8中,已将其删除并替换为名为Metaspace的区域。 什么是最重要的区别 PermGen的和元空间之间? 我知道的唯一区别是,java.lang.OutOfMemoryError: PermGen space不再可以抛出该异常,并且MaxPermSize忽略了VM参数。

9
在Mac OS X上安装Java JDK 7之后-mvn -version仍显示Java版本1.6.0_31
Oracle在4月26日针对Mac OS X发布了Java JDK7。我按照安装说明进行操作,在终端窗口中执行java -version时,我得到: java version "1.7.0_04" Java(TM) SE Runtime Environment (build 1.7.0_04-b21) Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode) 但是,当我mvn -version在终端窗口中执行操作时,会得到: Apache Maven 3.0.2 (r1056850; 2011-01-08 18:58:10-0600) Java version: 1.6.0_31, vendor: Apple Inc. Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home Default locale: en_US, platform encoding: MacRoman OS name: "mac os …
117 java  macos  maven  java-7 

15
如何在Mac OSX上使用JDK 7?
我想使用此链接中提到的WatchService API:http : //download.oracle.com/javase/tutorial/essential/io/notification.html 阅读后,我发现WatchService是计划用于JDK 7的NIO类的一部分。因此,它处于beta形式。没关系。 http://jdk7.java.net/download.html具有我下载和提取的JDK。我有一堆文件夹。我不知道该怎么办。 然后,我阅读了更多内容,发现一些不错的人将JDK 7创建为二进制文件,以便像我这样的人可以轻松地安装它。它被称为Open JDK:http : //code.google.com/p/openjdk-osx-build/ 因此,我下载了.dmg文件并安装了它。然后,我打开“ Java首选项”,然后看到OpenJDK7可用。 因此,现在我可以开始尝试使用WatchService API。在第一个链接的教程中,作者提供了一个.java文件,以便首先对其进行测试并确保其正在运行。这是文件的链接:http : //download.oracle.com/javase/tutorial/essential/io/examples/WatchDir.java 因此,我启动了Eclipse(实际上我使用STS)并创建了一个新的Java项目,并在“使用执行环境JRE:”中选择了JaveSE-1.7。在src文件夹下,我复制粘贴了WatchDir.java文件。 而且我仍然看到成堆的红色波浪线。所有的“ import.java.nio。*”都为红色,我无法将其作为Java应用程序运行。 我需要做什么?
107 macos  java  java-7 

2
Java 6与Java 7在自动拆箱中的差异
我已经注意到Java SE 6和Java SE 7在自动拆箱行为上的差异。我想知道为什么会这样,因为我找不到这两个版本之间这种行为变化的任何文档。 这是一个简单的例子: Object[] objs = new Object[2]; objs[0] = new Integer(5); int myInt = (int)objs[0]; 使用Java SE 7中的javac可以很好地进行编译。但是,如果我给编译器提供“ -source 1.6”参数,则在最后一行会出现错误: inconvertible types found : java.lang.Object required: int 我尝试下载Java SE 6以使用本机版本6编译器进行编译(没有任何-source选项)。它同意并给出与上述相同的错误。 那有什么呢?从更多的实验来看,Java 6中的拆箱似乎只能拆装明显(在编译时)属于装箱类型的值。例如,这在两个版本中都适用: Integer[] objs = new Integer[2]; objs[0] = new Integer(5); int myInt = (int)objs[0]; 因此,似乎在Java …
107 java  casting  java-7  unboxing 


16
生产中的Java G1垃圾回收
由于Java 7将默认使用新的G1垃圾收集,因此Java是否能够处理更大数量级的堆而不会“破坏” GC暂停时间?有人在生产中实际实施过G1,您的经验是什么? 公平地说,我唯一看到过很长的GC暂停时间是在非常大的堆上,远远超过了工作站。为了澄清我的问题;G1是否会打开通往数百GB堆的网关?结核病?

9
java.lang.VerifyError:在分支目标JDK 1.7处期待一个堆栈映射框架
升级到JDK 1.7后,出现以下异常: java.lang.VerifyError: Expecting a stackmap frame at branch target 71 in method com.abc.domain.myPackage.MyClass$JaxbAccessorM_getDescription_setDescription_java_lang_String.get(Ljava/lang/Object;)Ljava/lang/Object; at offset 20 at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2413) at java.lang.Class.getConstructor0(Class.java:2723) at java.lang.Class.newInstance0(Class.java:345) at java.lang.Class.newInstance(Class.java:327) at com.sun.xml.internal.bind.v2.runtime.reflect.opt.OptimizedAccessorFactory.instanciate(OptimizedAccessorFactory.java:184) at com.sun.xml.internal.bind.v2.runtime.reflect.opt.OptimizedAccessorFactory.get(OptimizedAccessorFactory.java:129) at com.sun.xml.internal.bind.v2.runtime.reflect.Accessor$GetterSetterReflection.optimize(Accessor.java:384) at com.sun.xml.internal.bind.v2.runtime.property.SingleElementLeafProperty.<init>(SingleElementLeafProperty.java:72) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at com.sun.xml.internal.bind.v2.runtime.property.PropertyFactory.create(PropertyFactory.java:113) at com.sun.xml.internal.bind.v2.runtime.ClassBeanInfoImpl.<init>(ClassBeanInfoImpl.java:166) at …
88 java  jaxb  java-7 

2
我是否正确使用Java 7 try-with-resources
如果引发异常,我希望缓冲的读取器和文件读取器关闭并释放资源。 public static Object[] fromFile(String filePath) throws FileNotFoundException, IOException { try (BufferedReader br = new BufferedReader(new FileReader(filePath))) { return read(br); } } 但是,是否需要有一个catch成功关闭的子句? 编辑: 本质上,Java 7中的上述代码是否等同于Java 6的以下代码: public static Object[] fromFile(String filePath) throws FileNotFoundException, IOException { BufferedReader br = null; try { br = new BufferedReader(new FileReader(filePath)); return read(br); } …

10
Java错误:比较方法违反其一般约定
我看到了很多与此有关的问题,并尝试解决了该问题,但是经过一个小时的搜索和大量的试验和错误后,我仍然无法解决。我希望你们中的一些人能抓住问题。 这是我得到的: java.lang.IllegalArgumentException: Comparison method violates its general contract! at java.util.ComparableTimSort.mergeHi(ComparableTimSort.java:835) at java.util.ComparableTimSort.mergeAt(ComparableTimSort.java:453) at java.util.ComparableTimSort.mergeForceCollapse(ComparableTimSort.java:392) at java.util.ComparableTimSort.sort(ComparableTimSort.java:191) at java.util.ComparableTimSort.sort(ComparableTimSort.java:146) at java.util.Arrays.sort(Arrays.java:472) at java.util.Collections.sort(Collections.java:155) ... 这是我的比较器: @Override public int compareTo(Object o) { if(this == o){ return 0; } CollectionItem item = (CollectionItem) o; Card card1 = CardCache.getInstance().getCard(cardId); Card card2 = CardCache.getInstance().getCard(item.getCardId()); …

4
如何检查Java 7路径的扩展
我想检查Path(在Java 7中引入)是否以某个扩展名结尾。我尝试这样的endsWith()方法: Path path = Paths.get("foo/bar.java") if (path.endsWith(".java")){ //Do stuff } 但是,这似乎不起作用,因为path.endsWith(".java")返回false。似乎endsWith()只有在最终目录分隔符(例如bar.java)之后的所有内容都完全匹配时,该方法才返回true ,这对我来说并不实用。 那么如何检查路径的文件扩展名?
83 java  path  java-7 

8
G1上的Java 7(JDK 7)垃圾收集和文档
Java 7已经出现了一段时间,但是我在垃圾收集器(尤其是新的G1收集器)的配置上找不到任何好的资源。 我的问题: G1是Java 7中的默认收集器吗?如果不是,我如何激活G1? g1在Java7中有哪些可选设置? 是否对其他收集器(例如cms或Java 7中的并行收集器)进行了更改? 在哪里可以找到有关Java 7中垃圾回收的良好文档?

5
Java 7和8中方法的最大大小
我知道Java的方法不能大于64 KB。这种限制导致我们从JavaCC语法生成的代码出现问题。我们在使用Java 6时遇到了问题,并且能够通过更改语法来解决此问题。是否已针对Java 7更改了限制,或者已针对Java 8计划了限制? 为了清楚起见。我不需要一个大于64 KB的方法。但是我写了一个可以编译成很大方法的语法。
80 java  java-7  java-8 

1
通过apt-get在Debian中安装Java 7(Oracle)
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow的主题。 7年前关闭。 改善这个问题 通过apt-get存储库在Debian中安装Oracle Java 7似乎不起作用。 apt-get install oracle-java7-installer 貌似apt-get不认oracle-java7-installer。
78 debian  java-7  apt-get 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.