首先,我想提一下,当2.2仍然是 beta 时,我也遇到了这个问题(迫使我恢复到2.1.1)。
今天安装了JavaSE 7u6 (与JavaFX 2.2 stable捆绑在一起)。NetBeans能够自动检测Default JavaFX Platform
.
创建了一个新JavaFX Application
项目(也尝试了FXML衍生产品,结果相同)。试过这段代码:
package javafxapplication;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import javafx.application.Application;
import javafx.stage.Stage;
public class JavaFXApplication extends Application
{
public static void main(String[] args)
{
launch(args);
}
@Override
public void start(Stage primaryStage)
{
System.setProperty("socksProxyHost", "127.0.0.1");
System.setProperty("socksProxyPort", "9050");
try
{
URLConnection conn = new URL("http://www.wikipedia.org").openConnection();
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = br.readLine()) != null)
{
System.out.println(line);
}
}
catch (Exception e) { e.printStackTrace(); }
System.exit(0);
}
}
它有效。不会因为错误的 socks 代理设置而导致无法建立连接的错误(我的机器上的该端口上没有运行任何东西)。这些属性被默默地忽略,连接直接发生。这是一个错误吗?我已经在 2 台运行Win7 x64的机器上对此进行了测试。不会发生在2.1.1上。