JavaScript是由Java應用程序執行的。但是,像Jquery庫這樣的東西實際上太長而不適合一個String變量。我能夠從文件中讀取jquery.js,但不知道如何將其打包到.jar文件中。如何將JavaScript文件捆綁到Java應用程序中?
回答
加載.js文件與加載jar文件中的其他資源相同。一般來說,這是我做的:
對於存儲在JAR文件的根目錄的文件:
SomeClass.getClass().getClassLoader.getResourceAsStream("myFile.js");
沿着側儲存在罐子.class文件的文件:
SomeClass.getClass().getResourceAsStream("myFile.js")
這兩種技術給你一個InputStream
。這可以變成一個String
與代碼更多的工作。見Read/convert an InputStream to a String。
此技術適用於您的資源文件與java類文件位於同一個jar文件中。
如何將文件存儲在jar的根目錄中?如何在jar文件中存儲.class文件?有什麼不同?我正在使用eclipse。 – KJW 2011-02-03 00:10:00
有各種各樣的地方,你可以保持你的JavaScript來源:
- 在CLASSPATH。你可以用
getResourceAsStream()
- 取數據庫。是的,數據庫。您可以像抓取任何其他CLOB一樣抓取它們。
就我個人而言,我已將兩種方法用於不同的目的。您可以將JavaScript文件保存在構建樹中,其方式與保存.properties文件的方式完全相同。就我個人而言,我只是將它們放在.java文件中,然後有一個構建規則以確保它們最終位於.war中,但它們確實可以在您的構建引擎可以找到的任何位置生活。
數據庫是保存腳本的好地方,因爲它使得您的Web應用程序更容易支持允許動態更新的「腳本門戶」。這是一個非常強大的工具,尤其是如果您製作Web應用程序以便Javascript模塊控制一些更重要的業務邏輯,因爲您可以部署更新或多或少的「現場」,而無需進行任何部署操作。
有一件事可以幫助你創建一些實用程序代碼來「包裝」你使用Javascript的任何訪問路徑(也就是說,無論是Sun的「javax.script」還是Rhino的綁定)在這個時間點上,我個人會選擇直犀牛,因爲它無論如何都不會有太大的變化,而Sun的這些東西都會卡住一個相當古老而又有問題的Rhino版本,暫時沒有看到更新)。使用實用包裝,最重要的事情之一就是讓您的JavaScript代碼(無論它來自何處)從您的服務器基礎架構導入其他 JavaScript文件。這樣您就可以開發JavaScript工具庫(或者,當然,也可以調整開源庫)並讓您的業務邏輯腳本導入並使用它們。
- 1. 如何將Java應用程序捆綁到Mac/Windows?
- 2. 如何將文件注入到systemjs-builder中以捆綁角4.0.0應用程序?
- 3. iOS的11文件應用:如何從應用程序捆綁
- 4. 如何捆綁angular4應用程序中的資源文件夾?
- 5. 如何在應用中捆綁文件?
- 6. 如何捆綁Linux應用程序?
- 7. 將文件捆綁到iOS應用程序的特定文件夾位置
- 8. 如何將程序中的文件捆綁在一起?
- 9. 應用程序捆綁
- 10. 應用程序小部件捆綁?
- 11. 如何在MSI中將Java依賴應用程序與JRE捆綁在一起
- 12. 如何捆綁Java應用程序和Oracle數據庫
- 13. 將Xvfb捆綁到應用程序中的問題
- 14. 如何將數據文件與Meteor應用程序捆綁在一起?
- 15. Webpack:如何將多個JavaScript文件捆綁到一個輸出文件中?
- 16. 如何將一個jQuery HTML應用程序捆綁爲Mac OSX應用程序?
- 17. 使用Browserify將node.js應用捆綁到單個文件中
- 18. 爲web應用程序捆綁python(「。py」)文件以及java類文件
- 19. 將Javascript綁定到GWT應用程序
- 20. 。iPhone應用程序中的捆綁
- 21. 使用JavaStub的OSX for Java應用程序捆綁軟件的文件關聯
- 22. 如何將視頻與應用程序捆綁在一起
- 23. 如何將git與電子應用程序捆綁
- 24. 如何將圖像捆綁到我的靜態QT應用程序中?
- 25. 如何將ruby包捆綁到[Objective-C]可可應用程序中?
- 26. 如何將Access數據庫與Java應用程序捆綁在一起
- 27. iOS - 與文本文件捆綁應用程序
- 28. Git捆綁到可可應用程序找不到幫手捆綁
- 29. 如何從AppleScript訪問Cocoa-AppleScript應用程序中的捆綁文件?
- 30. 將離子立方裝載機捆綁到應用程序
你爲什麼要打包一個jar文件中的java腳本?它不應該是戰爭嗎? – CoolBeans 2011-02-02 23:38:09