lion – Java,Firefox,VMware Fusion等无法访问系统代理设置?

我对其他程序对系统代理设置的可访问性似乎存在问题感到困惑.我在尝试(并且失败)在Safari中运行Processing生成的Java applet时遇到了这个问题.

首先,我在MacBookPro8,2上的设置:

Mac主机:OS X 10.7.2,Safari 5.1.2,适用于Mac OS X 10.7 Update 1的Java,Chrome 16.0.912.77,Firefox 7.0.1,处理1.5.1,处理1.2.1和处理2.0a4

Windows VM:VMware Fusion 4.1.1,Windows 7 Enterprise 64位,IE 9.0.4,Java 1.6.0_30和Processing 1.5.1

这是一个问题/证据列表,以及我尝试修复它们的方法(除非另有说明,否则所有尝试均失败).

>我无法在Safari中加载Java小程序.带有小程序的页面将保留用于显示该小程序的空间,但没有任何内容显示并且页面挂起(例如,我无法滚动).
>重新安装适用于Mac OS X 10.7 Update 1的Java.
>在Safari中,尝试(i)关闭“启用Java”; (ii)通过“重置”清除缓存
苹果浏览器…”.
>在Java Preferences中,尝试(i)关闭“启用applet插件和Web Start应用程序”; (ii)通过“删除文件…”清除缓存.
>请注意,Java本身似乎工作正常:(i)处理(我认为使用JDK)继续工作; (ii)在终端输入java -version给出正确的版本; (iii)Java适用于Windows.
> Java小程序在Chrome中也不起作用.

—-现在,为什么这似乎是一个代理问题—-
>我在家里没有问题,我不使用代理!这只是一个工作中的问题,我已经为HTTP,HTTPS,FTP和SOCKS配置了代理,并选择了自动代理配置.这些都是在“网络”偏好设置面板中完成的,设置都显示在/Library/Preferences/SystemConfiguration/preferences.plist中.它们通过sudo scutil –proxy出现在终端中.
> Firefox在家中运行良好,但它不会通过代理在工作时加载任何http站点(但它确实在我们的网络上加载了简单的主机名).请注意,Chrome和Safari似乎都遵循系统范围的代理设置.如果我手动指定Firefox的代理设置,那么Firefox(i)正确加载http地址(通过代理),Java applet也正确加载.
>在Windows中,IE9的情况类似于上面的#8.手动代理设置会使所有问题都消失:Java工作,页面加载.请注意,我从来没有必须手动设置代理设置. Windows似乎通过VMware Fusion从OS X中提取适当的设置.
>我检查了Java net.properties文件,以确保“java.net.useSystemProxies”设置不影响我.根据此文件中的注释,即使将其设置为“false”,OS X也会忽略该设置.无论如何,我尝试将其更改为“true”,但没有任何效果. (之后将其改回“假”.)
>这个很奇怪:我刚注意到在终端中,主机名显示为我们网络设置的内容,而不是我的计算机名称.我认为这是一种与Java问题大致同时出现的新行为.
>顺便说一下,尝试通过“磁盘工具”修复首选项.没有报告修理.
>创建了一个新用户.此帐户中也存在问题.
>尝试从安全模式开始.存在问题.

所以,上述所有情况都让我相信问题是基于程序(Firefox,Fusion,Java)无法访问系统范围的代理设置.再说一遍:当我不使用代理时,我无法重新创建任何这些问题,并且当我可以为特定应用程序(Firefox,Windows)清楚地指定它们时,它们就会消失.

我该如何解决这个问题?在尝试了大量的东西并寻找我能想到的一切之后,我就在这里.我绝对试图避免重新安装Lion,但这是我能想到的最后一个选择.我希望有人能提出更好的解决方案.你的意见?

解决方法:

我有同样的问题.当我使用proxy.pac文件时,某些应用程序无法获取设置.其中包括:

> Firefox
> Chrome
> Java应用程序(如eclipse)

一些使用pac文件的应用程序是:

> Safari
> Skype
> Adium
> Evernote

我发现,当我手动将代理服务器添加到系统首选项时,所有应用程序都会选择它.因此pac处理中的某些东西被打破了.也许Lion中的旧/新API?

上一篇:C++设计模式——装饰模式


下一篇:C#实现将DataGridView中的数据保存到CSV和Excel中