Tag: java 7

服务器关闭使用httpclient和Java 7建立的连接

我正在尝试连接到使用SNI提供证书的远程服务器。 我注意到服务器正在关闭使用Java 7编译和运行代码时的连接,而不是在我通过Java 8编译和运行它时。 下面是我为测试这个假设而编写的代码。 我切换Java版本并运行代码并获得不同的结果。 public static void getRequest() throws IOException, NoSuchAlgorithmException, KeyManagementException { String url = “https://sorry i can not share the exact url because of privacy concerns”; HttpClient client = getClientInstance(); HttpGet request = new HttpGet(url); HttpResponse response = client.execute(request); System.out.println(“Response Code : ” + response.getStatusLine().getStatusCode()); BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); […]

Android Studio – JDK问题,Android Studio Meltdown

在我将Java JDK 8从Update 40更新到45之后,我的所有项目都出错了。 你知道,代码上的红色字母。 当我点击“Alt + Enter”时,它会说安装JDK。 我已经尝试卸载Java和Android Studio,并得出了相同的结果。 我也尝试过使用Java JDK 7 Update 80,但仍然遇到了同样的问题。 请看这些图片,因为我认为我没有很好地解释这个问题。 http://i.stack.imgur.com/YaMar.png http://i.stack.imgur.com/gc02g.png 请帮助我,因为否则我不知道如何开发Android应用程序了。 任何帮助,任何帮助表示赞赏。 谢谢。

使用Java 7 API逐字节读取文件

我有一个2 gb文件,我想用Java读取(实际上是4个2gb文件)。 所以Java 7中有一个新function可以让我一次读取所有字节。 import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.StandardOpenOption; public class reconstructor { public static void main(String[] args) throws IOException { Path p = Paths.get(“test.txt”); for (int i = 0; i < 1; i++) { byte[] b = Files.readAllBytes(p); Files.write(p, b, StandardOpenOption.APPEND); } } } 这是一个愚蠢的程序,它将读取一个预先输入单个字节的文件并连续读取该文件并将其读回的内容附加到同一文件中。 现在显然,RAM不够大,一次读取2gb文件,更不用说其中四个了,所以我想知道是否有任何快速方法,不使用外部库(除非这是唯一的方法)阅读四个逐字节文件,以便RAM不会过载(否则我最终会出现Java堆错误)。

使用java.lang.invoke.MethodHandle调用私有方法

如何使用方法句柄调用私有方法? 据我所知,只有两种可公开访问的Lookup实例: MethodHandles.lookup() MethodHandles.publicLookup() 并且都不允许不受限制的私人访问。 有非公开的Lookup.IMPL_LOOKUP我的需求。 是否有一些公共方法来获取它(假设SecurityManager允许它)?

是否可以在java 7中使用半透明窗口,包括标题栏?

与此问题相关: Java Tutorials半透明窗口示例是否给那些使用jdk7的人带来麻烦? 使用jdk1.6.0_26我似乎能够将半透明应用于JFrame,但jre7不是这样: NativeException:java.awt.IllegalComponentStateException:框架已修饰 ex(jruby脚本java,工程jdk1.6虽然没有jdk7): 要求’java’ 类MouseDraw def self.go java_import’javax.swing.JFrame’ java_import’com.sun.awt.AWTUtilities’ f = JFrame.new AWTUtilities.set_window_opacity(f,0.5) f.set_size 200,200 f.show 结束 结束 MouseDraw.go 所以我的问题是“是否有可能在jdk7中有一个半透明的标题栏”(我想要一个透明窗口,我正在创建可拖动/可resize)

没有打印声明的代码没有执行

我一直在制作倒计时节目,我想出了这个。 package main; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.io.IOException; import java.net.MalformedURLException; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; import javax.sound.sampled.DataLine; import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.UnsupportedAudioFileException; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextField; public class Gatoo extends JFrame implements ActionListener { private int sec, min, secTot, since = 999; private long lastTime; private […]

如何让unit testing在java 7中运行:java.lang.VerifyError:期望分支目标下的stackmap帧

嗨,我正在使用maven 3.0.3运行maven测试,使用hibernate 4.0.0最终版本和jdk7 update 2上的spring 3.1。 我收到以下错误。 Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 63 in method ${myDomainClass}.equals(Ljava/lang/Object;)Z at offset 24 at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2442) at java.lang.Class.getDeclaredMethods(Class.java:1808) at org.hibernate.property.BasicPropertyAccessor.getterMethod(BasicPropertyAccessor.java:352) at org.hibernate.property.BasicPropertyAccessor.getGetterOrNull(BasicPropertyAccessor.java:331) at org.hibernate.property.BasicPropertyAccessor.createGetter(BasicPropertyAccessor.java:314) at org.hibernate.property.BasicPropertyAccessor.getGetter(BasicPropertyAccessor.java:310) at org.hibernate.internal.util.ReflectHelper.getter(ReflectHelper.java:250) at org.hibernate.internal.util.ReflectHelper.reflectedPropertyClass(ReflectHelper.java:229) at org.hibernate.mapping.SimpleValue.setTypeUsingReflection(SimpleValue.java:314) at org.hibernate.cfg.HbmBinder.bindSimpleId(HbmBinder.java:447) at org.hibernate.cfg.HbmBinder.bindRootPersistentClassCommonValues(HbmBinder.java:380) at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:320) at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:171) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3377) […]

使用字符串错误的IntelliJ switch语句:使用-source 7

我正在尝试使用IntelliJ(在Mac OS X上)编译我使用Eclipse编写的一些代码。 我试图运行以下代码: switch (category) { case “below 20”: below20++; break; case “20 to 29”: to30++; break; case “30 to 39”: to40++; break; case “40 to 49”: to50++; break; case “50 to 59”: to60++; break; case “60 to 69”: to70++; break; case “70 t0 79”: to80++; break; case “80 to 89”: to90++; break; case […]

为什么这个代码在Java 1.6中编译而在Java 1.7中编译?

以下代码在Java 1.6中编译良好,但无法在Java 1.7中编译。 为什么? 代码的相关部分是对私有“数据”字段的引用。 引用来自定义字段的同一类,因此看似合法。 但它是通过一般类型的变量发生的。 这段代码 – 一个基于内部库中的类的简化示例 – 在Java 1.6中工作,但现在不在Java 1.7中。 我不是在问这个如何解决这个问题。 我已经做到了。 我试图找到解释为什么这不再起作用的原因。 想到三种可能性: 根据JLS,此代码不是法律的,应该永远不会编译(1.6编译器中存在错误,在1.7中已修复) 根据JLS,此代码是LEGAL并且应该编译(1.7编译器中引入了向后兼容性错误) 此代码属于JLS中的灰色区域 Foo.java: import java.util.TreeMap; import java.util.Map; public abstract class Foo<V extends Foo> { private final Map data = new TreeMap(); protected Foo() { ; } // Subclasses should implement this as ‘return this;’ public abstract […]

尝试资源的资源范围

在Java 7的try -with-resources构造中,我可以在try语句中声明一个资源,当它超出范围时它将自动关闭。 但是,我没有发现任何可用资源范围的迹象。 具体来说,是否可以在try块的catch / finally块中声明它? 我在Eclipse Kepler中尝试了以下内容,但它给人的印象是: 资源变量由内容辅助(代码完成)提供 : 快速修复建议更改为资源变量,但这会递归地产生它尝试修复的相同问题: 在提出Eclipse Bug Tracker中的错误之前,我想知道正确的范围限制是什么。