在 Java 程式碼附件 就可以連接程式原始碼
在 Javadoc 位置 則可以連接 Javadoc
其實剛剛的設定都記錄在:
{WorkSpace}/.metadata/.plugins/org.eclipse.jst.server.core/
org.eclipse.jst.server.tomcat.runtimeTarget.xml
內容如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <classpath> <source-attachment entry="D:/apache-tomcat-7.0.53/lib/commons-io-2.4.jar" runtime-id="Apache Tomcat v7.0" source-attachment-path="D:/apache-tomcat-7.0.53/src/commons-io-2.4-sources.jar"> <attribute name="javadoc_location" value="jar:file:/D:/apache-tomcat-7.0.53/src/commons-io-2.4-javadoc.jar!/"/> </source-attachment> <source-attachment entry="D:/apache-tomcat-7.0.53/lib/commons-logging-1.1.3.jar" runtime-id="Apache Tomcat v7.0" source-attachment-path="D:/apache-tomcat-7.0.53/src/commons-logging-1.1.3-sources.jar"> <attribute name="javadoc_location" value="jar:file:/D:/apache-tomcat-7.0.53/src/commons-logging-1.1.3-javadoc.jar!/"/> </source-attachment> </classpath>
所以只要編寫 org.eclipse.jst.server.tomcat.runtimeTarget.xml 的內容,重新啟動 Eclipse 就會連結原始碼附件,當然這麼麻煩的事還是寫程式自動處理比較快樂,既然是用 Eclipse 寫 Java 當然是用 Ant 來處理是最好的。
首先幾個環境定義:
- Server Src 路徑:D:/apache-tomcat-7.0.53/src
- Server Lib 路徑:D:/apache-tomcat-7.0.53/lib
- Runtime Id:Apache Tomcat v7.0
- Jar 名稱:xxxxx.jar
- Source 名稱:xxxxx-sources.jar
- Javadoc 名稱:xxxxx-javadoc.jar
tomcat-xml-build.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE project> <project name="tomcat-xml-build" default="deploy-output-xml" basedir="."> <!-- 載入額外 ant-contrib 定義 [if,not,or,then,equals] --> <taskdef resource="net/sf/antcontrib/antcontrib.properties"/> <property name="tomcat.id" value="Apache Tomcat v7.0" /> <property name="tomcat.home" value="D:/apache-tomcat-7.0.53" /> <property name="output.file" value="org.eclipse.jst.server.tomcat.runtimeTarget.xml" /> <basename property="ant.filename" file="${ant.file}" /> <path id="tomcat.lib"> <fileset dir="${tomcat.home}/lib" includes="*.jar" /> </path> <target name="build-xml"> <echo>====================================================================</echo> <echo>開始建立 ${output.file}</echo> <echo file="${output.file}"><?xml version="1.0" encoding="UTF-8" standalone="no"?> <classpath> <!-- Code Generate from "${ant.filename}" --></echo> <foreach target="loop-jar-file" param="jar-file"> <path refid="tomcat.lib"/> </foreach> <echo file="${output.file}" append="true"> </classpath></echo> <echo>====================================================================</echo> <echo>完成產生 ${output.file}</echo> </target> <target name="loop-jar-file" if="jar-file"> <echo level="info">${jar-file}</echo> <basename property="jar-name" file="${jar-file}" suffix=".jar"/> <if> <or> <available file="${tomcat.home}/src/${jar-name}-sources.jar"/> <available file="${tomcat.home}/src/${jar-name}-javadoc.jar"/> </or> <then> <echo>輸出 ${jar-name}</echo> <echo file="${output.file}" append="true"> <source-attachment entry="${tomcat.home}/lib/${jar-name}.jar" runtime-id="${tomcat.id}" source-attachment-path="${tomcat.home}/src/${jar-name}-sources.jar"> <attribute name="javadoc_location" value="jar:file://${tomcat.home}/src/${jar-name}-javadoc.jar!/"/> </source-attachment></echo> </then> </if> </target> <target name="deploy-output-xml" depends="build-xml"> <echo>====================================================================</echo> <echo>部署 ${output.file} 到 .metadata</echo> <eclipse.convertPath resourcepath="workspace_loc:/" property="workspace_loc"/> <copy file="${output.file}" todir="${workspace_loc}/.metadata/.plugins/org.eclipse.jst.server.core" /> </target> <target name="show-properties"> <echoproperties /> </target> </project>
執行前需要 ant-contrib,然後啟動配置必須是[在工作區的同一個 JRE 中執行],這是因為用到 Eclipse Ant 所以提供的環境變數,執行完後重新啟動 Eclipse 就可以看到連結的附件。
0 回應:
張貼留言