我在將HTML文件加載到我的應用程序上時出現了問題,並且出現在我的Web引擎中。將jar文件中的本地html文件加載到web引擎中
目前,如果我運行我的應用程序扔IntelliJ IDE。 HTML頁面正在正確加載!但是當我做這個項目時,我將該應用程序運行到我的終端。 HTML文件根本沒有被加載。
我的代碼用於將HTML頁面加載到我的Web引擎。
WebEngine we = wv.getEngine();
we.setJavaScriptEnabled(true);
String htmlFile = getClass().getResource("/html/index.html").toExternalForm();
System.out.println(">>>"+htmlFile);
we.load(htmlFile);
爲什麼我要我的println?檢查我的HTML頁面的路徑。 看來,當我在我的項目IntelliJ上運行它。應用程序正常運行。如下所示:
>>>file:/Developer/Liss-SDE/out/production/liss/html/index.html
但是,當我在我的終端上。它給我印上了一些我不明白的東西。
>>>jar:file:/Users/damien/Desktop/liss%7cSDE/liss.jar!/html/index.html
爲什麼它把罐子:開頭?另外他爲什麼要把!到我的程序.jar?如果我們與其他印刷品進行比較,則完全不同!
我提取了.jar文件來檢查目錄和HTML文件是否丟失,但一切正常。 那麼我有什麼問題?
'jar:file:/Users/damien/Desktop/liss%7cSDE/liss.jar!/ html/index.html'是['JarURLConnection']( https://docs.oracle.com/javase/7/docs/api/java/net/JarURLConnection.html)用於描述jar中位置的語法。 –
哦,因爲我做了這些東西的時間太長了.. :)我認爲你不需要用下面提到的Jar和FileSystem API來做所有的事情。 'getResource()'已經在爲你工作:爲了獲取文件的內容,使用'getResourceAsStream()'。 –
所以我使用這種方法(導致** InputStream **,我必須將其轉換爲字符串加載到Web引擎? – Damiii