buildxml編譯
⑴ eclipse是不是必須自己寫build.xml文件才可以編譯
No.
build.xml is used when you choose ant to help you compile and run the code.
你的採納是我前進的動力,還有不懂的地方,請繼續「追問」。
⑵ ant的build.xml 編譯(java)時無法找到符號:符號變數是枚舉型的。
查查 com.zsoft.zlpweb.util.CfgUtil 相關內容是否在classpath編譯路徑內
⑶ ANT build.xml run運行 編譯失敗,
找到: java.lang.Object [javac] 需要: java.util.List
這是返回值類型問題,報錯報的很清楚.需要的類型,你轉換一下就OK.
⑷ 我的java項目用build.xml編譯時build步驟總是不能結束這是為什麼
這個說明你的ant腳本寫的有問題,
你看一下你的代碼:
<project default="指向你的最後一個target" basedir=".">
然後從最後一個target開始的depends中依賴上一個target
不知道這樣能不能解決你的問題,僅作為參考
⑸ (java)用build.xml文件編譯的時候跑幾下就補動了
有兩個可能
1.是你這個build里調用了另外一個build,另一個出錯。所以會編譯的慢些。有可能什麼都沒有提示就結束了。
2.因為使用的eclipse,build使用的內存,與eclipse共享,內存不足。
在dos下執行ant
這樣就可以了。(我們現在要一起build八個工程,就是這樣。)
⑹ build.xml是什麼
1、ant的配置文件,用於打包發布,裡面含有配置文件。有點類似於linux/unix下的makefile。
(1)build.xml就是一個XML文件,它包含一個project節點和至少一個target節點,target節點包含多個task元素。簡單說,target節點代表著你的構建目標,而該目標是由多個操作/任務(task)來達成的。
(2)文字描述比較枯燥,下面以簡單的java項目為例,說明如何通過ant發布jar包。
在eclipse中新建一個java項目,結構如下
2、ant
(1)Apache Ant,是一個將軟體編譯、測試、部署等步驟聯系在一起加以自動化的一個工具,大多用於Java環境中的軟體開發。由Apache軟體基金會所提供。
(2)Ant的優點
A、Ant是Apache軟體基金會JAKARTA目錄中的一個子項目,它有以下的優點。跨平台性。Ant是存Java語言編寫的,所示具有很好的跨平台性。操作簡單。Ant是由一個內置任務和可選任務組成的。Ant運行時需要一個XML文件(構建文件)。Ant通過調用target樹,就可以執行各種task。
B、每個task實現了特定介面對象。由於Ant構建文件時XML格式的文件,所以和容易維護和書寫,而且結構很清晰。Ant可以集成到開發環境中。由於Ant的跨平台性和操作簡單的特點,它很容易集成到一些開發環境中去。
(3)Ant 開發
Ant的構建文件:當開始一個新的項目時,首先應該編寫Ant構建文件。構建文件定義了構建過程,並被團隊開發中每個人使用。Ant構建文件默認命名為build.xml,也可以取其他的名字。只不過在運行的時候把這個命名當作參數傳給Ant。構建文件可以放在任何的位置。一般做法是放在項目頂層目錄中,這樣可以保持項目的簡潔和清晰。
⑺ 用myeclipse內置的ANT工具build.xml編譯jar包需要配置java環境變數和ANT環境變數么
不需要吧,只需要在build.xml里邊設置好jdk以及你的第三方類庫的jar目錄就行了
⑻ ANT build.xml 編譯出錯Error running javac.exe compiler,詳細情況如下:
有可能是java的classpath設置的不正確。
建議運行 ant -f build.xml -v ,查看具體的錯誤,定位問題。
⑼ ant編譯build.xml文件
折騰了大半天,可算搗騰出來了,這里需要提醒注意如下幾點:
1、如果jdk是1.6及以下,則需要使用的ant版本是1.9.x;
2、如果jdk是1.8,則需要使用ant版本是1.10.x;
3、可用eclipse導出war包,將lib目錄下的jar包放到一個目錄下,然後直接引用,避免遺漏掉jar包沒導入進去。
以下是build.xml文件內容,安裝好ant後,直接執行ant build.xml即可打包。
<?xml version="1.0" encoding="UTF-8"?>
<!-- 定義一個工程,默認任務為warFile。 -->
<project name="bing-info" default="warFile" basedir=".">
<!-- 指定jdk 貌似這里指定也沒什麼用~-->
<property name="env.JAVA_HOME" value="C:/Program Files/Java/jdk1.8.0_101"/>
<!-- 定義屬性,打成war包的名稱。 -->
<property name="warFileName" value="nbAPP.war"></property>
<!-- 指定war包路徑及依賴包路徑 這里需要指定工程的路徑 -->
<property name="compilePath" value="D:/project/nbAPP"/>
<!-- 定義路徑,編譯java文件時用到的jar包。 -->
<path id="project.lib">
<fileset dir="${basedir}/lib">
<include name="**/*.jar"/>
</fileset>
</path>
<!-- 定義任務,清空任務:清空原有的class文件,創建新的build路徑。 -->
<target name="clean">
<delete dir="${compilePath}/build" />
<mkdir dir="${compilePath}/build" />
</target>
<!-- 定義任務,編譯src文件夾中的java文件,編譯後的class文件放到創建的文件夾下。 -->
<target name="compile" depends="clean">
<javac srcdir="${basedir}/src/main" debug="true" includeantruntime="false" encoding="UTF-8" >
<classpath refid="project.lib">
</classpath>
</javac>
</target>
<!-- 定義默認任務,將class文件集合成jar包。 -->
<target name="warFile" depends="compile">
<!-- 刪除原有war包。 -->
<delete dir="${compilePath}/${warFileName}" />
<!-- 建立新war包。 -->
<war destfile="${compilePath}/${warFileName}" webxml="${basedir}/WebRoot/WEB-INF/web.xml">
<!-- 將非jar和非class文件拷貝到war包的對應路徑下。 -->
<fileset dir="${basedir}/WebRoot">
<include name="**/**.*" />
<exclude name="**/*.jar"/>
<include name="WEB-INF/classes/**"/>
</fileset>
<!-- 將jar和class文件拷貝到war包的對應路徑下。 -->
<lib dir="${compilePath}/lib" />
<classes dir="${compilePath}/build" />
<!-- 將資源文件拷貝進war對應路徑下 -->
<classes dir="${basedir}/src/main/resources" />
</war>
</target>
</project>
⑽ eclipse是不是必須自己寫build.xml文件才可以編譯
你好:eclipse中每次保存java文件後一般都可以自動編譯;在菜單窗口把project --Bulid-Au..那個選項勾上就可以了。ant才需要這個bulid.xml;一般都用不到的。