我想將我的Java程序作爲JAR文件分發。我的程序需要Oracle JDBC驅動程序,它也作爲JAR文件提供。但java -jar
命令只接受一個JAR文件。因此我必須合併這兩個JAR文件。這可以很容易地完成,但我可以做到這一點?我是否允許將我的程序作爲包含Oracle JDBC JAR文件內容的JAR文件進行分發?是否允許重新包裝Oracle Oracles JDBC驅動程序?
0
A
回答
6
1
是的,只要您不修改jar文件或其中的任何文件,就可以將Oracle JDBC驅動程序打包到您的jar文件中。在某些庫中,還需要將許可證文件也包含在內您的發行版 - 您需要閱讀各個jar文件的許可證詳細信息。通用甲骨文分配許可條款可以在這裏http://www.oracle.com/technetwork/licenses/distribution-license-152002.html
發現關於你的問題,請參見下面的解釋的java -jar
部分:
要啓動,我們使用該命令的可執行的JAR文件java -jar executable.jar
JVM將調查jar文件的清單並執行主類的主要方法 - 您在jar文件中指定的方法。應用程序的任何依賴關係都可以通過類路徑設置來滿足 - 我們不需要在啓動應用程序時指定所有的依賴關係jar文件。
還有的類路徑設置不同的方式:
- 設置系統類路徑(在Windows
set CLASSPATH=app1.jar;app2.jar;driver.jar;
和在Unix/Linuxexport CLASSPATH=app1.jar:app2.jar:app3.jar
)。當您控制系統變量並且它是受控環境時,此方法非常有用,但此方法不適用於將應用程序分發到客戶端 - 在啓動應用程序時提及類路徑。這可以通過使用java comman的
-classpath
選項完成 - 例如java -classpath app1.jar;app2.jar;driver.jar -jar executable.jar
此方法對快速測試非常有用,並且如果要引用的jar文件的數量少於 - 指定mainfest類路徑。這是打包應用程序的最佳選擇。我們可以在清單類路徑中指定的依賴,這樣
Class-Path: app1.jar app2.jar driver.jar
注:請用適當的分隔符的類路徑條目,例如在Windows ;
是分隔符的類路徑條目,在UNIX :
是分隔符,並在清單你已經使用空間作爲分隔符。另外,在提到app1.jar/app2.jar/driver.jar的地方,你必須使用絕對或相對路徑的jar文件
相關問題
- 1. 是否有Spark SQL jdbc驅動程序?
- 2. 找不到Oracle JDBC驅動程序
- 3. Oracle 10G XE的JDBC驅動程序
- 4. Grails 3.1.8 Oracle JDBC驅動程序配置
- 5. 爲Oracle 8i選擇jdbc驅動程序
- 6. JUL到SLF4J與oracle jdbc驅動程序
- 7. 找不到Oracle jdbc驅動程序
- 8. eclipse是否預裝了mysql jdbc驅動程序?
- 9. Windows中是否默認安裝了任何JDBC驅動程序?
- 10. 如何安裝SQLite JDBC驅動程序?
- 11. MySQL JDBC驅動程序是否符合JDBC規範?
- 12. 更改爲新的Oracle JDBC驅動程序?
- 13. java.sql.SQLException:[BEA] [Oracle JDBC驅動程序] [Oracle] ORA-01438:值大於指定的精度允許此列
- 14. 關於JDBC驅動程序
- 15. JDBC驅動程序問題
- 16. 哪個oracle jdbc驅動程序是我的coldfusion 8安裝使用
- 17. MySQL的JDBC驅動程序 - 查詢包裝?
- 18. 什麼是最好的類型4 Oracle JDBC驅動程序?
- 19. 是否允許ClickOnce更新?
- 20. 加載JDBC驅動程序
- 21. 什麼是jdbc驅動程序「org.gjt.mm.mysql.Driver」?
- 22. 5型JDBC驅動程序
- 23. Tomcat和JDBC驅動程序
- 24. MySQL jdbc驅動程序
- 25. jdbc odbc驅動程序
- 26. OCI JDBC驅動程序和NLS設置
- 27. 選擇一個JDBC驅動程序
- 28. Microsoft的MS-SQL Server JDBC 3.0驅動程序是否包含對JTA的支持?
- 29. JDBC瘦驅動程序的NLS_LANG設置?
- 30. MySQL的JDBC驅動程序是否有解析SQL的功能?
這是一個法律問題,而不是編程問題,所以不屬於SO。 – APC 2012-07-10 13:00:46