eclipse工程詳解以及如何打jar包
最近一直對eclipse的執行機制和打包方法很是困惑,上網找了一些資料,可大多都是零零散散,缺少系統性,我想在這裡總結一下和大家分享,也希望大家讀完後發現有什麼不對的地方留言與我聯絡,我一定及時改正!
eclipse工程目錄詳解
我使用eclipse在本地新建一個project如下:
下面分別對該目錄中的資料夾進行解釋
- src:源程式檔案,主要存放我們編寫的java源程式,也就是.java檔案
- JRE System Library:主要存在java的標準庫,比如我們常用的java.lang包或者java.util包都在這個目錄的rt.jar下
- Referenced Libraries:主要存放我們引用的外部jar包,比如我們操縱oracle必須使用的ojdbc14.jar。但必須build之後才能存放到這裡,這個我們後面再講。
- .settings:該資料夾下主要存放eclipse的配置檔案,.classpath存放eclipse的類搜尋路徑;.project主要描述工程的基本資訊。
- 這裡我想再說一下classpath檔案:.classpath 的位置定義了你這個專案在編譯時所使用的$CLASSPATH。classpath 的配置是有先後順序的,JVM 搜尋classpath 的策略是從前到後搜尋,如果在搜尋過程中,已經找到需要載入的類,那麼就不再向後搜尋。所以,如果在classpath 中存在重複的類,那麼JVM 只加載classpath 配置中,位置靠前的類。後面的類就不會被載入了。
build path詳解
假如我現在想對oracle進行操作,那麼我必須要引入ojdbc14.jar,對於這種外部引入的包,我們一般採用如下方法處理:
1. 在當前工程上右擊,建立lib資料夾。
2. 將所需的外部jar包(或者class,甚至可以直接是java,eclipse在引用時可以直接編譯)拷貝到lib資料夾下。
3. 在引入的包上右擊→Build Path→Add to Build Path,這就將我們的jar包build到我們的專案中了,這時開啟.classpath檔案可以看到如圖classpath新添加了我們的ojdbc14.jar的路徑,這也是我們build的目的
ps1:關於這一點我要在申明一下,在論壇上見到一個朋友問自己做了一個專案,將專案所需引用的jar包放到一個資料夾下,然後在環境變數中配置了這個路徑,但是eclipse卻識別不了。
其實我們在用eclipse開發專案時,對每個專案都需要配置classpath,具體怎麼配上面已經解釋過了。我認為專案是獨立於電腦環境變數的classpath的,每一個專案都需要它特定的classpath,所以在eclipse開發的時候每一個專案都會有一個.classpath檔案
ps2:為什麼每個專案需要自己的classpath?
我認為eclipse這是為了讓你更好的生成專案,試想:如果你不build你當前引用jar,而只是將其放到電腦配置的classpath中,這樣如果能夠執行。但一旦你移植到別的電腦上,可能你的專案就不能用了,因為你沒有build,而其他電腦的classpath並不一定和你開發時一樣,classpath中也沒有儲存你的引用路徑,所以雖然你的引用包都拷過去了,但是jvm找不到它
我們做專案的目的是為了讓使用者使用,所以很多時候生成的jar包是可執行jar包。但是你把引用build進去之後就可以直接打包發給使用者讓使用者去用了嗎?其實並不見得,如果你是最後直接打成一個可執行的jar包。那麼你還要有一個MANIFEST.MF檔案,這個檔案是幹什麼的呢?又該如何打包呢?
eclipse打包及其注意事項
用eclipse打包很簡單,但之前我們需要手動建立MANIFEST.MF檔案。
關於這個檔案,我覺得最好的解釋是:這個檔案決定jar包時可執行jar包還是不可執行jar包的關鍵,MAINFEST.MF中用兩個重要的配置 Class-Path和Main-Class,Main-Class是你的可執行jar包的程式入口,一般是你的主函式所在的類的相對路徑,如果這一項為空,或者是該類中沒有main函式,則該jar不可執行;Class-Path中儲存你的引用包的路徑,如我這裡應該寫lib/ojdbc14.jar。可能有人會問,不是已經在.classpath中build了嗎?但那是eclipse的執行配置,比如當你在win中執行此jar時,系統環境並不讀取.classpath而是讀取MAINFEST.MF
既然有了這個MAINFEST.MF,我們重新整理工程目錄就可以看到
下面介紹打包的流程:
在需要打包的工程右擊→Export:
選擇JAR file,這裡選擇你的jar包輸出路徑
然後next→next。這裡要注意,要選用自己的MANIFEST.MF檔案,不要讓eclipse自動生成,自動生成往往不能配置我們想要的資訊。
然後finish即可輸出jar包。
這是我第一次寫部落格,完全是自己寫的,寫的不好的還請大家見諒,我以後會改進!
相關推薦
eclipse工程詳解以及如何打jar包
最近一直對eclipse的執行機制和打包方法很是困惑,上網找了一些資料,可大多都是零零散散,缺少系統性,我想在這裡總結一下和大家分享,也希望大家讀完後發現有什麼不對的地方留言與我聯絡,我一定及時改正! eclipse工程目錄詳解 我使用eclipse在本
IDEA 構建為了打 jar 包的工程,包含 maven 打 jar 包的過程
一個 inf 裏的 基本 ide 點擊 測試 單表查詢 dea 前言:最近自己寫了一個單表查詢的組件,包含前端、後臺,所以需要向阿裏的 druid 一樣將所有文件打到一個 jar 包裏,這裏首先記錄如何打 jar 包。 一、創建一個簡單的 maven 項目 1、選擇
Eclipse中給maven專案打jar包
一、 前言 最近寫專案需要將其打成jar上傳到伺服器上,之前一直寫到是web,打的是war包,這次寫的是遊戲伺服器,是jar包。順便記之。 二、maven打包 關於打包有兩種型別:①不帶依賴的打包,②帶依賴的打包 預設情況下我們使用maven insta
eclipse打jar包與找不到依賴包詳解
[TOC] 背景:一個工程要打成jar包,一般兩種情況,要麼是打成一個工具jar讓別人引用,要麼打成一個可執行jar包。那麼不使用maven的情況下通過IDE如eclipse來打包怎麼做這兩件事呢
JAR包中的MANIFEST.MF檔案詳解以及編寫規範
JAR包中的MANIFEST.MF檔案詳解以及編寫規範 參考百度百科的解釋如下: http://baike.baidu.com/item/MANIFEST.MF MANIFEST.MF:這個 manifest 檔案定義了與擴充套件和包相關的資料。單詞“manifest”的意思是“
Java之eclipse將工具類打成Jar包、使用jar包、以及刪除jar包
Eclipse如何匯出jar包??? 選中對應的工具類,右鍵==>Export... ==>選中Java目錄下的JAR File==>Next==>選擇匯出路徑==>Fi
Maven打jar包之maven-jar-plugin配置詳解,自動生成MANIFEST.MF檔案
一、maven-jar-plugin配置介紹 最近學習springboot多模組打jar包部署專案,用到了maven-jar-p
轉:Eclipse中創建Maven版的Web工程(詳解)
搭建 9.png loaded script idt content 註意 simple facet 一、搭建步驟 ?首先創建一個Maven的Project,如下圖: ?點擊Next,勾選 Create a simple project ?點擊Next,註意Pack
spring boot打jar包和打war包的區別作用以及需要的改動
spring boot打jar包和打war包的區別作用 此文為轉載:http://mrlee23.iteye.com/blog/2047968 在開發除錯完成之後,可以將應用打
eclipse如何打jar包
1,工程結構如下: 2,在工程裡建立一個manifest.mf檔案: Manifest-Version: 1.0 Main-Class: com.sim.main.Repeat Class-Path: lib/mysql-connector-java-5.1.40.jar
【Java】開發工具--Eclipse&MySQL官網自選版本下載以及專案jar包下載
我們一般在使用開發軟體時,不一定使用最新版本的開發軟體,所以需要選擇適用的開發軟體來開發專案,下面是我總結的eclipse以及mysql官網自選版本下載步驟: Eclipse自選版本下載 百度輸入eclipse,進入eclipse官網地址,點選右上角的Down
java程式在eclipse上打jar包,Linux上成功執行
、eclipse下的java專案結構如下圖所示: 2、manifest.mf檔案定義如下所示 注意: ① manifest.mf檔案最後一行必須是一個空行。 ② lib/dom4j-1.6.1.jar和lib/jaxen-1.1-beta-7.jar之
linux yum命令詳解以及查詢當前哪些包需要更新,與更新命令。
yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。yum提供了
java工程如何打jar包和war包
1.利用jdk裡的工具 例如我們要打包的檔案在d:tomcat7\webapps\demoweb\ 目錄中 則 執行 cmd; cd d:\tomcat7\webapps\demoweb 輸入jar -cvf demoweb.war * 回車 ,會
USB抓包工具--Bus Hound的使用方法詳解以及下載
概述 Bus Hound是一個超級軟體匯流排協議分析器,用於捕捉來自裝置的協議包和輸入輸出操作。該軟體是由美國perisoft公司研製的一種專用於PC機各種匯流排資料包監視和控制的開發工具軟體,
android studio工程打jar包
1.將你的工程專案轉成Model或Libray 在build檔案中配置修改,意思是將該工程修改為庫的形式 原來 apply plugin: ‘com.android.application’ 修改後 apply
eclipse打Jar包問題
1、首先,如果你的Java專案中沒有任何第三方包,是十分容易的,只需要通過eclipse的Export就可以按操作一步步執行,如下: 選擇你要匯出的Java專案,右鍵選擇Export,如下圖,選擇JAR file 然後next,next,選擇我們的啟動類
eclipse中打jar包並使用jar包
jar是多個class檔案的壓縮包 打jar包:選中專案–右鍵–Export–java–jar–自己指定一個路徑和一個名稱–Finish 使用jar包:複製到專案路徑下並新增至構建路徑 Java_
Eclipse 匯出可執行Jar檔案(工程)(包含第三方Jar包)
背景:寫了一個小功能的專案,要匯出可執行的jar包,但是專案中匯入驅動資料庫的包;包含有第三方jar包;但是網上很多方法在打包之前先在工程目錄下建立一個名字為MANIFEST.MF;本人不愛寫,覺得太麻
Eclipse 打jar包,並且在win7 下執行jar檔案,MANIFEST.MF檔案指定執行入口
1:為即將匯出的java專案新增一個檔案,檔名為:MANIFEST.MF 這個檔案可以定義jar包的一些引數,主要是jar檔案執行入口; 檔案內容為: Manifest-Version: 1.0 Class-Path: . Main-Class: test 將tes