一、寫好的java可執(zhí)行程序在其他電腦上使用的方法
1、將Java源代碼編譯成.class文件
在開發(fā)時(shí),在命令行或集成開發(fā)環(huán)境(IDE)中編譯Java源代碼,生成.class文件(即Java字節(jié)碼文件)。例如,如果你的源代碼文件在目錄user/src/中,可以使用以下命令來(lái)編譯它們:
javac -d user/bin user/src/*.java
該命令將所有Java源代碼文件編譯成.class文件,并將它們保存在user/bin目錄中。
2、創(chuàng)建Manifest文件
創(chuàng)建一個(gè)名為Manifest.mf的文本文件,該文件包含應(yīng)用程序的描述信息和入口點(diǎn)(即程序的主類)。Manifest文件應(yīng)該包含以下內(nèi)容:
Manifest-Version: 1.0Main-Class: com.example.MyMainClass
其中,com.example.MyMainClass應(yīng)該替換為你的主類的完全限定名。
3、打包JAR文件
打包JAR文件:使用下面的命令來(lái)打包JAR文件:
cd user/binjar cfm user.jar Manifest.mf com/*
該命令將所有的.class文件打包成JAR文件,并包含Manifest文件。這個(gè)JAR文件可以在其他電腦上獨(dú)立運(yùn)行。把JAR文件傳輸?shù)狡渌娔X上,然后在命令行中運(yùn)行以下命令來(lái)啟動(dòng)程序:
java -jar user.jar
這個(gè)命令將啟動(dòng)Java虛擬機(jī),并運(yùn)行你的程序的入口點(diǎn),即Manifest文件中定義的主類。注意:如果需要在打包JAR文件時(shí)包含第三方庫(kù),可以將這些庫(kù)放置在lib目錄下,并將lib目錄下的jar文件添加到MANIFEST.MF文件的Class-Path條目中,例如:
Manifest-Version: 1.0Main-Class: com.example.MyMainClassClass-Path: lib/someLibrary.jar lib/anotherLibrary.jar
這樣,在運(yùn)行JAR文件時(shí),Java虛擬機(jī)會(huì)自動(dòng)在lib目錄中查找依賴庫(kù)。
二、Java介紹
1、簡(jiǎn)介
Java 是一個(gè)通用術(shù)語(yǔ),用于表示 Java 軟件及其組件,包括“Java?運(yùn)行時(shí)環(huán)境(JRE)”、“Java?虛擬機(jī)(JVM)”以及“插件”。Java具有大部分編程語(yǔ)言所共有的一些特征,被特意設(shè)計(jì)用于互聯(lián)網(wǎng)的分布式環(huán)境。Java具有類似于C++語(yǔ)言的形式和感覺,但它要比C++語(yǔ)言更易于使用,而且在編程時(shí)徹底采用了一種以對(duì)象為導(dǎo)向的方式。Java版本指的是 Java 系列和更新編號(hào)。示例:在網(wǎng)站上或者 Windows 程序中,版本顯示為 Java 8 Update 25。舊版本也可顯示為 1.7.0_65,這表示 Java 7 Update 65。
2、編程簡(jiǎn)介
Java是一種編程語(yǔ)言,被特意設(shè)計(jì)用于互聯(lián)網(wǎng)的分布式環(huán)境。Java具有類似于C++語(yǔ)言的“形式和感覺”,但它要比C++語(yǔ)言更易于使用,而且在編程時(shí)徹底采用了一種“以對(duì)象為導(dǎo)向”的方式。
3、使用
使用Java編寫的應(yīng)用程序,既可以在一臺(tái)單獨(dú)的電腦上運(yùn)行,也可以被分布在一個(gè)網(wǎng)絡(luò)的服務(wù)器端和客戶端運(yùn)行。另外,Java還可以被用來(lái)編寫容量很小的應(yīng)用程序模塊或者applet,做為網(wǎng)頁(yè)的一部分使用。applet可使網(wǎng)頁(yè)使用者和網(wǎng)頁(yè)之間進(jìn)行交互式操作。
4、構(gòu)成
Java平臺(tái)由Java虛擬機(jī)(Java Virtual Machine)和Java 應(yīng)用編程接口(Application Programming Interface、簡(jiǎn)稱API)構(gòu)成。Java 應(yīng)用編程接口為Java應(yīng)用提供了一個(gè)獨(dú)立于操作系統(tǒng)的標(biāo)準(zhǔn)接口,可分為基本部分和擴(kuò)展部分。在硬件或操作系統(tǒng)平臺(tái)上安裝一個(gè)Java平臺(tái)之后,Java應(yīng)用程序就可運(yùn)行。Java平臺(tái)已經(jīng)嵌入了幾乎所有的操作系統(tǒng)。這樣Java程序可以只編譯一次,就可以在各種系統(tǒng)中運(yùn)行。Java應(yīng)用編程接口已經(jīng)從1.1x版發(fā)展到1.2版。常用的Java平臺(tái)基于Java1.8,最近版本為Java19。
三、jar介紹
1、簡(jiǎn)介
在軟件領(lǐng)域,JAR文件(Java歸檔,英語(yǔ):Java Archive)是一種軟件包文件格式,通常用于聚合大量的Java類文件、相關(guān)的元數(shù)據(jù)和資源(文本、圖片等)文件到一個(gè)文件,以便開發(fā)Java平臺(tái)應(yīng)用軟件或庫(kù)。JAR文件是一種歸檔文件,以ZIP格式構(gòu)建,以.jar為文件擴(kuò)展名。用戶可以使用JDK自帶的jar命令創(chuàng)建或提取JAR文件。也可以使用其他zip壓縮工具,不過(guò)壓縮時(shí)zip文件頭里的條目順序很重要,因?yàn)镸anifest文件常需放在首位。JAR文件內(nèi)的文件名是Unicode文本。
2、基本含義
JAR 文件格式以流行的 ZIP 文件格式為基礎(chǔ)。與 ZIP 文件不同的是,JAR 文件不僅用于壓縮和發(fā)布,而且還用于部署和封裝庫(kù)、組件和插件程序,并可被像編譯器和 JVM 這樣的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用來(lái)指示工具如何處理特定的 JAR。
延伸閱讀1:可執(zhí)行的JAR
一個(gè)可執(zhí)行的jar 文件是一個(gè)自包含的 Java 應(yīng)用程序,它存儲(chǔ)在特別配置的JAR 文件中,可以由 JVM 直接執(zhí)行它而無(wú)需事先提取文件或者設(shè)置類路徑。要運(yùn)行存儲(chǔ)在非可執(zhí)行的 JAR 中的應(yīng)用程序,必須將它加入到您的類路徑中,并用名字調(diào)用應(yīng)用程序的主類。但是使用可執(zhí)行的 JAR 文件,我們可以不用提取它或者知道主要入口點(diǎn)就可以運(yùn)行一個(gè)應(yīng)用程序。可執(zhí)行 JAR 有助于方便發(fā)布和執(zhí)行 Java 應(yīng)用程序。