摘要:背景介紹將程序打包,無論是為了代碼復用,還是發布應用,都是必不可少的的技能,上次總結了一下利用打包成,這次我來說如何打包。導入往往我們使用打包不只是為了雙擊使用,有時也是為了代碼復用。礙于時間關系,將留待下一篇文章進行總結。
背景介紹
將程序打包,無論是為了代碼復用,還是發布應用,都是必不可少的的技能,上次總結了一下python利用cxfreeze打包成exe,這次我來說java如何打包。
和python不同,java自帶的jar命令功能很強大,我們并不需要第三方的軟件就可以進行打包。
需要補充說明一下這里的打包指的是將一系列class文件打包成jar文件,并不指打包成exe文件,如果需要打包成exe可以使用,可以使用exe4j制作,地址點這里。
本文對打包成exe文件的方法不作介紹。
什么是jarJAR(Java Archive,Java 歸檔文件)是與平臺無關的文件格式,它允許將許多文件組合成一個壓縮文件。
注意了,jar是一個壓縮文件,有不少剛學習java的同學都好奇要如何打開jar文件,事實上使用7-zip,WinRAR等就可以打開,當然了jar并不是為了給你這么用的。
如何制作jar本文將講解使用eclipse制作jar,至于在命令行下如何用jar命令以后再細說。
使用eclipse制作jar 制作普通的jar文件文件->導出->java->選擇jar文件(可運行jar文件下面會總結)
下一步(直到沒有下一步可選)就是選擇需要打包的資源,以及路徑等相關配置,這個按需選擇即可。
隨后選擇完成即可,一個jar文件就產生了耶( ?? ω ?? )y
總的來說,打包普通jar文件使用eclipse打包比較傻瓜化,下面說說制作可以運行的jar
制作可運行的jar文件文件->導出-->java->選擇可運行jar文件
主要區別的是需要配置啟動配置,也就是你main方法的那個類,其余配置也可以按需配置即可。
隨后選擇完成即可,一個可運行jar文件就產生了耶( ?? ω ?? )
雙擊看看,怎么沒反應?
原因很簡單,可運行jar文件是映射給javaw.exe運行的,而javaw.exe和python中pyw格式是一樣的,即隱藏掉控制臺,顯示你自己繪制的GUI程序,所以如果你的程序沒有提供GUI,那么就會什么也不顯示。
那么是不是就無法運行沒有提供的GUI文件了嗎?
答案當然是否定的。
你只需在命令行下進入相對應的目錄,使用以下命令
java -jar yourJarName.jar
即可在控制臺中看到結果
顯然,可運行jar與普通的jar文件差別只在于你是否提供了具有main方法的那個類。
導入jar往往我們使用jar打包java不只是為了雙擊使用,有時也是為了代碼復用。既然是為了復用,自然就意味著我們需要將打包好了jar文件導入工程中
eclipse中導入jar的操作依舊很傻瓜化。
現在工作目錄下新建一個文件夾,用于管理導入jar文件
在左邊資源管理器中,單擊新建的文件夾->導入->常規->文件系統。
選擇你要導入的jar文件。
在新建的文件夾中看到你添加進的jar文件,就成功了一半了。
這時你需要單擊jar文件,在彈出菜單中選中構建路徑->添加到構建路徑后,在引用的庫下看到這個jar文件,就完全成功了。
此后,你就可以使用import語句來使用你之前打包好的類了耶( ?? ω ?? )。
關于在eclipse導入jar還有其他方法,詳細可查看他人的博客,本文只選擇容易操作的進行總結。
尾聲eclipse導入jar的三種方法
eclipse雖然使得打包jar文件變得非常簡單,但有些時候我們還需要在命令行下用java自帶的jar命令來進行打包。礙于時間關系,將留待下一篇文章進行總結。
新人寫完只是為了幫助更新的人,如果有不足的地方,望指正。如果有幫助,歡迎收藏推薦和關注本專欄。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/65483.html
摘要:前言昨天總結了使用進行打包今天說一下命令行下使用命令進行打包。在命令行下打包需要比使用這些成熟的工具更需要注意一些東西,但打包和使用總體來說都不算太復雜,下面慢慢講述。第三行指定主類所在類路徑。第四行指明程序運行的主類。 前言 昨天總結了使用eclipse進行jar打包,今天說一下命令行下使用jar命令進行打包。 在命令行下打包jar需要比使用eclipse這些成熟的工具更需要注意一些...
摘要:用于將集成至標準的構建生命周期中,此時執行時就會執行指定的操作,從而實現自定義打包。插件的已棄用會自動執行生命周期。可執行文件執行時出現亂碼使用生成的可執行文件,在中執行時出現亂碼,項目編碼統一為,日志使用框架。得到的是當前的絕對路徑。 「博客搬家」 原地址: 簡書 原發表時間: 2017-04-06 1. 設置 Java JDK 的版本為「JDK 1.8」 可以修改 pom.x...
摘要:本文主要介紹了利用生態系統構建微服務的多種方法,并分析了每種方法的利弊。也不例外,本文探討了使用生態系統來構建微服務的幾種不同方式。另一種單部署就是使用一個嵌入式框架來構建服務。在中,和項目對構建微服務提供了很好的支持。 【編者按】微服務背后的大理念是將大型、復雜且歷時長久的應用在架構上設計為內聚的服務,這些服務能夠隨著時間的流逝而演化。本文主要介紹了利用 Java 生態系統構建微服務...
摘要:的打包結構改動是這個引入的這個的本意是簡化的繼承關系,以一種直觀的優先的方式來實現,同時打包結構和傳統的包應用更接近。目前的繼承關系帶來的一些影響有很多用戶可能會發現,一些代碼在里跑得很好,但是在實際部署運行時不工作。 前言 對spring boot本身啟動原理的分析,請參考:http://hengyunabc.github.io/s... Spring boot里的ClassLoad...
摘要:時間年月日星期二說明本文部分內容均來自慕課網。項目一個項目代表一個正在構建的組件比如一個文件,當構建啟動后,會基于實例化一個類,并且能夠通過變量使其隱式可用。任務動作定義了一個最小的工作單元。 時間:2017年05月16日星期二說明:本文部分內容均來自慕課網。@慕課網:http://www.imooc.com教學示例源碼:無個人學習源碼:https://github.com/zccod...
閱讀 2082·2021-11-24 09:39
閱讀 1536·2021-10-11 10:59
閱讀 2489·2021-09-24 10:28
閱讀 3367·2021-09-08 09:45
閱讀 1263·2021-09-07 10:06
閱讀 1657·2019-08-30 15:53
閱讀 2056·2019-08-30 15:53
閱讀 1411·2019-08-30 15:53