[英]Javaws app will not launch on Mac OS X 10.8 with Java 7u55
我有一個非常簡單的應用程序。 這是完整的源代碼:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
public class AppTest {
public static void main(String[] args) {
Date myDate = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String myDateString = sdf.format(myDate);
FileWriter fstream = null;
BufferedWriter out = null;
try{
fstream = new FileWriter("AppTest.log",true);
out = new BufferedWriter(fstream);
out.append(myDateString + " AppTest has run\n");
out.close();
fstream.close();
}catch (Exception e){}
}
}
它可以在Mac OS X以外的操作系統上運行。如果我強制使用Java 6,它將在Mac OS X上運行。這可以從命令行完成:
/System/Library/Java/Support/Deploy.bundle/Contents/MacOS/javaws -XstartOnFirstThread http://forexhitandrun.com/app_dev/apptest.jnlp
在這種情況下,它將一行寫入日志文件,因此我知道它已經運行。
但是,如果我像這樣從瀏覽器中將其作為Webstart應用程序運行:
http://forexhitandrun.com/app_dev/apptest.jnlp
什么都不會寫入日志文件。 此方法使用來自Oracle的Java 7的最新更新。
但是在得出結論是我的Java安裝有問題之前,我可以從瀏覽器(因此是Java 7)啟動一個不同的應用程序,並且它確實可以工作:
http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/JavaTest/
是否有人經歷過類似的事情,或者有人對可能出什么問題有任何線索?
Petesh的言論讓我考慮了jnlp文件,因為所有權限都在security標簽下定義。 我不確定java不喜歡jnlp文件中的內容是什么,但是我只是從確實有效的應用程序中復制了一些資源信息,並認為它現在可以工作了。
這是我的jnlp文件的資源部分:
<resources>
<j2se version="1.6+" spec="1.0+" initial-heap-size="64m" max-heap-size="128m" href="http://java.sun.com/products/autodl/j2se"/>
<jar href="apptest.jar"/>
</resources>
謝謝! 現在,我可以調試真正的應用程序了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.