Java程序在一台计算机上运行,但在另一台计算机上不运行

Java程序在一台计算机上运行,但在另一台计算机上不运行,java,twitter4j,Java,Twitter4j,我正在编写一个程序,它使用Twitter4J API来阅读和回复Twitter上的推文。到目前为止,该程序似乎在我的Acer Aspire 5734Z上完美运行,Windows 7 Home Premium 64位和Arch Linux 64位。但是,当我在运行Raspbian的Raspberry Pi上运行相同的程序时,我遇到以下错误: Jan 04, 2014 12:34:16 AM twitter4j.TwitterStreamImpl info INFO: java.security.N

我正在编写一个程序,它使用Twitter4J API来阅读和回复Twitter上的推文。到目前为止,该程序似乎在我的Acer Aspire 5734Z上完美运行,Windows 7 Home Premium 64位和Arch Linux 64位。但是,当我在运行Raspbian的Raspberry Pi上运行相同的程序时,我遇到以下错误:

Jan 04, 2014 12:34:16 AM twitter4j.TwitterStreamImpl info
INFO: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: sun.security.ssl.SSLContextImpl$DefaultSSLContext)
Jan 04, 2014 12:34:16 AM twitter4j.TwitterStreamImpl info
INFO: Waiting for 250 milliseconds
等等,奇怪的时间戳,让我检查一下我的树莓皮的时间是否设置正确


编辑:不,这没有解决问题。

这很可能是一个安装问题,虽然它可能是一个丢失的库,但我自己没有看到这个问题,所以不能为您做太多,但我做了一些谷歌搜索,发现这里回答了两个类似的问题,可能会有所帮助:


我写的一个应用程序也有类似的问题。它不适用于oldrr java版本25,但适用于45,只需更新即可修复该问题。也许这也可以解决这个问题,因为在这些版本之间有些东西发生了变化。

您是否验证了您编写的程序和pi上的jre是相同的?如果没有一个需要更改。它们都是1.7,但是我注意到我的笔记本电脑(Arch)是1.7.0_45,Pi是1.7.0_25对于一些加密算法,Java依赖于平台的底层支持,如果没有,那么你就不走运了。那么,你这是什么意思?值得注意的是,在某一点上,我确实有另一个使用twitter4j的程序在这个pi上运行,但我已经重新安装了Raspbian,并且我以一种不同的更有效的方式使用twitter4j,但我认为它以同样的方式进行身份验证。IDK还有什么会改变的。好吧,那应该不会有任何影响。我会看看@HotLicks说了什么。你可以在pi上下载一个库来提供帮助。是的,第一个链接解释了某些情况下消息可能是虚假的——因为其他一些问题。我不知道这是否重要,但我没有使用我自己的任何身份验证代码,而是使用twitter4j中内置的代码。很可能就是这样。问题是拉斯比式回购协议似乎没有45个,但只有25个(所以我在谷歌上搜索了一下,找到了这行代码:sudo-apt-get-update&&sudo-apt-get-install-oracle-java7-jdk-也许这会更新它?检查一下,我认为它使用的是openjdk,而不是oracle的。所以现在我只需要弄清楚如何切换。成功!它只有40而不是45,但无论如何都能工作!:D