當前位置:首頁 » 編程軟體 » antjdk編譯

antjdk編譯

發布時間: 2022-06-09 07:14:19

java web項目開發,用ant將java文件編譯為class文件和直接在Eclipse運行java文件編譯成class,有什麼區別

沒有任何區別。ant是自動化編譯工具,而Eclipse作為IDE,也可以幫助你自動化編譯。編譯的過程都是調用了你安裝的JDK中的java編譯器

Ⅱ 如何使用Ant來編譯Java文件以及如何運行

一、源文件情況
源文件位置為:D:\temp,源文件名(含包名字):com.ldq.WeatherDemo.java

前提:已安裝 jdk ,並配置好環境變數。

二、過程
1、編譯:
提示符進入 D:\temp 路徑下,輸入:javac com\ldq\WeatherDemo.java
生成類文件:WeatherDemo.class

2、打包:
提示符進入 D:\temp 路徑下,輸入:jar cvf WeatherDemo.jar com\ldq\WeatherDemo.class
生成檔案文件:WeatherDemo.jar

3、修改 MANIFEST.MF 文件:
由於引用了外部的類,所以要添加引用類的路徑,即修改MANIFEST.MF文件。保存如下內容到 D:\temp下,文件名 MANIFEST.MF

Manifest-Version: 1.0
Sealed: true
Main-Class: com.ldq.WeatherDemo
Class-Path: lib/jaxrpc.jar lib/log4j-1.2.8.jar lib/mail.jar lib/saaj.jar lib/tools.jar lib/wsdl4j-1.5.1.jar lib/activation.jar lib/axis.jar lib/axis-ant.jar lib/commons-discovery-0.2.jar lib/commons-logging-1.0.4.jar

注意在後面空兩行。
提示符進入 D:\temp 路徑下,輸入:jar umf MANIFEST.MF WeatherDemo.jar
執行時會提示更新的內容。

4、添加包含引用類的相應文件:
在 D:\temp 路徑下,新建 lib 文件夾,講對應的 jaxrpc.jar ... 拷入其中,此時,即可雙擊(或在提示符下輸入:java -jar WeatherDemo.jar)運行 WeatherDemo.jar 文件了。

三、總結
雙擊運行 jar 文件時,虛擬機會到 jar 文件中下找 .MF 文件,找到對應的 Main-Class 運行,引入的類在 Class-Path 所指路徑。
事實上可以利用 winrar或winzip 工具打開 jar 文件,直接將修改好的 MANIFEST.MF 拷入覆蓋,class文件也可以做同樣的操作,節省了輸入復雜難記的命令。另外,對於 javaME 生成的 jar 文件,限制嚴格些,MANIFEST.MF 文件中有個文件大小的欄位,可以先保存,查看文件大小,再修改保存。
另一種方法是通過 Eclipse - Export - Runnable JAR file 直接生成 jar 文件,此時,所有的引用類都被打包在 jar 文件里了。

Ⅲ 請教ant怎麼編譯jdk源碼

整理了一下編譯JDK源碼的Ant腳本。發現用新一點的JDK編譯舊的版本更容易,比如用jdk1.6.0_25編譯jdk1.6.0_21。如果直接用jdk1.6.0_21編譯自身代碼,不是缺這個就是沒那個,頗為麻煩。切到jdk1.6.0_25後,一下就編譯通過了。
<project name="create rt_debug.jar" default="createJar" basedir=".">
<!-- *************************************************************** -->
<!-- Set-Up of propertys -->
<!-- *************************************************************** -->
<property name="project.build" location="build" />
<property name="project.src" location="${project.build}/src" />
<property name="project.classes" location="${project.build}/classes" />
<property name="project.dist" location="${project.build}/dist" />
<property name="JAVA_SOURCE" value="C:/Dev/Software/Java/jdk1.6.0_21" />
<property name="JAVA_COMPILER" value="C:/Dev/Software/Java/jdk1.6.0_25/fastdebug" />
<property name="debuglevel" value="source,lines,vars" />
<property name="target" value="1.6" />
<property name="source" value="1.6" />
<property environment="env" />
<!-- *************************************************************** -->
<!-- Initialize the bulid environment. -->
<!-- *************************************************************** -->
<target name="init">
<!-- Create the time stamp -->
<tstamp />
</target>
<!-- *************************************************************** -->
<!-- Set-Up of classpath -->
<!-- *************************************************************** -->
<path id="JavaLibraries">
<pathelement location="${project.classes}" />
<fileset dir="${JAVA_COMPILER}/lib">
<include name="**/*.jar" />
</fileset>
<fileset dir="${JAVA_COMPILER}/jre/lib">
<include name="**/*.jar" />
</fileset>
</path>
<path id="project.classpath">
<path refid="JavaLibraries" />
</path>
<!-- *************************************************************** -->
<!-- Clean the bulid environment. -->
<!-- *************************************************************** -->
<target name="clean" depends="init">
<delete dir="${project.build}" quiet="true" />
<mkdir dir="${project.build}" />
</target>
<!-- *************************************************************** -->
<!-- Unpacd the source code package. -->
<!-- *************************************************************** -->
<target name="unpack" depends="init, clean">
<unzip src=\'#\'" /src.zip" dest="${project.src}" />
</target>
<!-- ****************************************************************** -->
<!-- Compile the source code. -->
<!-- ******************************************************************* -->
<target name="build" depends="unpack">
<echo message="Compile ${ant.project.name}" />
<mkdir dir="${project.classes}" />
<javac classpathref="project.classpath" srcdir="${project.src}" destdir="${project.classes}" debug="true" debuglevel="${debuglevel}" source="${source}" target="${target}" fork="true" memoryMaximumSize="512m">
<include name="**/*.java" />
</javac>
</target>
<!-- ****************************************************************** -->
<!-- Create jar package. -->
<!-- ******************************************************************* -->
<target name="createJar" depends="build">
<mkdir dir="${project.dist}" />
<jar jarfile="${project.dist}/rt_debug.jar" compress="false">
<fileset dir="${project.classes}" />
</jar>
</target>
</project>

Ⅳ Ant 用javac編譯時怎樣指定jdk的版本

  1. 可以使用javac命令javac命令格式及用法如下:
    用法:javac <選項> <源文件>
    其中,可能的選項包括:
    -source <版本> 提供與指定版本的源兼容性
    -target <版本> 生成特定 VM 版本的類文件 例如:C:>javac -source 1.5 -target 1.5 p100Sum.java這樣就把p100Sum.java源文件兼容的編譯成1.5版本了

  2. <javacfork="true"
    executable="C:/j2sdk1.4.2_05/bin/javac"
    source="1.4"
    memoryInitialSize="512m"
    memoryMaximumSize="1024m"
    classpathref="path.id.classpath"
    srcdir="${src}"
    destdir="${classes}"
    debug="true"
    deprecation="on"
    optimize="off"
    />

    source處填版本號

Ⅳ java中ant版本1.8.4 而jdk版本1.7.0_17 運行ant編譯的時候報錯....

打開 common_build.xml 找到如下幾行:

<condition property="is.java.version.15">
<or>
<equals arg1="${ant.java.version}" arg2="1.5"/>
<equals arg1="${ant.java.version}" arg2="1.6"/>
<equals arg1="${ant.java.version}" arg2="1.7"/>(在這里加入你的Java版本)
</or>
</condition>

Ⅵ 什麼是sdk ndk ant jdk

1、軟體開發工具包(外語首字母縮寫:SDK、外語全稱:Software Development Kit)一般都是一些軟體工程師為特定的軟體包、軟體框架、硬體平台、操作系統等建立應用軟體時的開發工具的集合。
2、Android NDK 是在SDK前面又加上了「原生」二字,即Native Development Kit,因此又被Google稱為「NDK」。
3、Ant,是一個將軟體編譯、測試、部署等步驟聯系在一起加以自動化的一個工具,大多用於Java環境中的軟體開發。由Apache軟體基金會所提供。
4、jdk是 Java 語言的軟體開發工具包。

Ⅶ ant在編譯的時候報JAVA(TM) PlatForm SE binary已停止工作

找到MyEclipse安裝目錄,用記事本把myeclipse.ini打開,修改其中的-vm項,把它的路徑改成你自己安裝好的JRE裡面的的lib文件夾的路徑,然後再打開軟體看看,是不是就可以成功的打開了?值得注意的是,這里的lib文件夾並不是jdk目錄下的,而是jre目錄下的,不要搞混了。

Ⅷ 用ant將程序編譯和運行,都要做什麼工作

ant是apache項目組的一個子項目,是一個基於java的構建工具。ant本身用java實現,要構建的工程的配置文件用xml格式描述,可以很方便的實現跨平台構建工作。
ant 可以從http://ant.apache.org下載,目前最新版本為1.5.4。下載完畢後直接解壓縮到一個目錄,例如D:\ant。

下一步我們需要設置如下的環境變數:
ANT_HOME:ant的安裝目錄,如果按上面方法解壓縮了ant,那麼這個值應該設為D:\ant
JAVA_HOME:jdk的安裝目錄
PATH:把%ANT_HOME%\bin目錄加到path變數,以便於從命令行直接運行ant。

(1)建立build.xml

用ant編譯規模較大的工程非常方便,每個工程都對應一個build.xml文件,這個文件包含與這個工程有關的路徑信息和構建任務。

下面是一個最簡單的build.xml文件:

<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="projectTemplate" default="init" basedir=".">
<target name="init" >
<property name="lib.dir" value="lib"/>
<echo message="Hello ,lib.dir is set to ${lib.dir}" >
</echo>
</target>
</project>

每個build.xml有且僅有一個project,每個project下面可以包含多個target,每個target表示一個小的任務,每個任務負責執行一段腳本。ant有內置任務集可供使用,例如上面的echo就是在console上顯示消息。

更詳細的內置任務請參考http://ant.apache.org/manual/coretasklist.html

${lib.dir}表示引用一個名字叫做lib.dir的屬性值,這個屬性的值就是lib。

(2)運行ant

使用ant.bat可以直接運行ant,如果不帶任何參數,ant會在當前路徑下搜索build.xml文件,如果找到了這個文件,就運行project的default屬性指定的target.我們也可以帶參數來運行ant,以便選擇build.xml文件和要運行的target:

ant -buildfile c:\demo\build.xml init

表示運行c:\demo\build.xml 中名字為init的target

(3)ant的目標依賴

target有一個屬性depends,在其中可以指定一系列的target名字,表示在執行該target前,必須首先執行的一系列其它target。depends具有傳遞性,例如:targetA depends targetB,而targetB depends targetC和targetD,這樣在執行targetA之前,首先執行C和D,然後執行B,最後才會執行A。

下面是個簡單的例子,在執行編譯的動作前,首先需要建立一個目標代碼存放的目錄,然後再執行編譯。

<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="project" default="init" basedir=".">
<target name="init" >
<property name="dist" value="dist"/>
<mkdir dir="${dist}" />
</target>
<target name="build" depends="init">
<javac srcdir="SourceCode" destdir="${dist}">
</javac>
</target>
</project>

Ⅸ ant編譯老是不成功,請教高手!!

如果你的文件名字是build.xml的話,在命令提示符中只需輸入ant即可
不要用ant build
假如文件的名字不是build.xml而是其他的,比如name.xml,要運行的話就得這樣輸入命令 ant buildfile name.xml

Ⅹ 請問下在myeclipse下可以編譯java程序的jdk版本,放在ant編譯怎麼不通過,提示兼容性問題

MyEclipse設置JDK和JRE具體的應用版本其實很簡單,分為三種狀況:
1、設置默認使用的JDK和JRE環境。
具體步驟:菜單window-preferences-java-Installed JRES。
點中了,右邊的窗口點ADD按鈕,記住選擇添加安裝了Java目錄下的JDK目錄,而不是JRE目錄。
天價後,在列表中選擇你要使用的那個jdk版本即可。
然後Compiler項下,選擇編譯的jdk級別就可以了。

2、針對項目的環境設置。
右鍵項目菜單properties-Java Compiler,選擇了以後,選中Enable project specific settings,去掉Use compliance from execution environment ......前面的那個選擇框,就可以自己選擇使用的jdk版本了。

3、應用伺服器的環境設置。
選擇你要使用的應用伺服器名稱,點進去會看到JDK的菜單,選中後就可以在右邊窗口的下拉選擇框中選擇自己需要使用的jdk版本了。

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:336
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:613
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:945
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:742
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:372