thinking

          one platform thousands thinking

          eclipse下環境變量設置:eclipse導入工程出現 Unbound classpath variable Error

          在導入網友提供的Tomcat源碼工程時候出現了

          The project cannot be build until build path errors are resolved

          Unbound classpath variable:"a_Tomcat6-depend/ant1.7/ant.jar " in project Tomcat6

          弄了一個早上才意識到錯誤出現在工程的“.classpath”文件里面

          改文件內容為:

          <?xml version="1.0" encoding="UTF-8"?>
          <classpath>
           <classpathentry kind="src" path="src"/>
           <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
           <classpathentry kind="var" path="a_Tomcat6-depend/ant1.7/ant.jar"/>
           <classpathentry kind="var" path="a_Tomcat6-depend/puretls-0.95/puretls-0.95.jar"/>
           <classpathentry kind="var" path="a_Tomcat6-depend/commons/common-logging1.1.1/commons-logging-1.1.1.jar"/>
           <classpathentry kind="var" path="a_Tomcat6-depend/jaxrpc1.1/jaxrpc.jar"/>
           <classpathentry kind="var" path="a_Tomcat6-depend/jdt3.3/org.eclipse.jdt.core_3.3.0.v_771.jar"/>
           <classpathentry kind="var" path="a_Tomcat6-depend/wsdl4j-1.5.1/wsdl4j-1.5.1.jar"/>
           <classpathentry kind="output" path="classes"/>
          </classpath>

          發現目錄里并不存在"a_Tomcat6-depend"一文件夾,而實際目錄為“Tomcat6/lib/ant1.7/ant.jar”。于是 把該設置改為“lib/ant1.7/ant.jar”,依然報同類錯誤。于是很自然地對“.classpath”定義的方式產生了興趣,終于找到一篇高 手寫的關于“eclipse下環境配置”的文章。

          原來<classpathentry kind="var" path="a_Tomcat6-depend/ant1.7/ant.jar"/>這種定義方式是運用了eclipse的環境變量,換句話說 a_Tomcat6-depend 應該是一個環境變量(make sense!)。

          于是 Window->Refernces->Java->Build Path->Classpath Variables

          定義了一個name為a_Tomcat6-depend

          Then,Done.



           eclipse中需要關聯到第三方JAR文件時,可以直接添加JAR文件,也可以增加環境變量的形式來添加JAR文件,當然原理都是一樣的,都是引用 JAR文件,除了可以直接右點擊工程,屬性,在"Java Build Path"中添加外,其實還可以直接編輯工程目錄下的 .classpath這個文件,這個文件即是記錄工程中的一些環境變量及工程中文件的輸出目的的,此文件結構大至如下:

          <?xml version="1.0" encoding="UTF-8"?>
          <classpath>
              
          <classpathentry kind="src" path="src/java"/>
              
          <classpathentry kind="src" output="target/test-classes" path="src/test"/>
              
          <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
              
          <classpathentry kind="var" path="MAVEN_REPO/activation/jars/activation-1.0.jar"/>
              
          <classpathentry kind="var" path="MAVEN_REPO/mvc/jars/mvc-1.0.jar"/>
              
          <classpathentry kind="var" path="MAVEN_REPO/ehcache/jars/ehcache-1.0.jar"/>
              
          <classpathentry kind="var" path="MAVEN_REPO/CodeManager/jars/CodeManager-1.0.jar"/>
              
          <classpathentry kind="var" path="MAVEN_REPO/jetspeed/jars/jetspeed-1.4.jar"/>
          .
          <classpathentry kind="var" path="MAVEN_REPO/dwr/jars/dwr-1.1.1.jar"/>
              
          <classpathentry kind="var" path="MAVEN_REPO/servletapi/jars/servletapi-2.4.jar"/>
              
          <classpathentry kind="var" path="MAVEN_REPO/jspapi/jars/jsp-api-2.0.jar"/>
              
          <classpathentry kind="lib" path="D:/workspace/repository/junit/jars/junit-3.8.1.jar"/>
              
          <classpathentry kind="output" path="target/classes"/>
          </classpath>

          其中,src是源文件輸出目的的,output是類文件輸出目的的,con是eclipse運行時所需的核心包,var是通過環境變量的形式增加的一些 JAR包,lib是直接加入的JAR包,所以需要加入一些第三方的JAR文件時,直接編輯此文件即可,eclipse不需重啟,工程即可生效.
          有關說明:
               有時從別的工程導入到另一個工程時,工程名旁邊有一個紅插,而這時可能有很多人認為是某個地方導入的不對,或有些文件沒導入完全,當然也有這個可能,但大 多數是因為原工程中引入了一些環境變量,而導入到本機上的eclipse時,環境變量路徑發生了變化,eclipse找不到相關的JAR文年,所以工程名 旁邊有一個紅插,而且這時當新建類,或編輯類時,類文件都不會編繹的,甚至有人認為此時是eclipse不能自動編繹了,查看自動編繹屬性時又是自動編繹 的,換到其他工程時又可以自動編繹,所以可能一時找不到原因,其實是.classpath文件中的一些環境變量的路徑不正確導致的,去掉或指向正確的路徑 即可

          posted on 2009-06-24 14:28 lau 閱讀(3775) 評論(0)  編輯  收藏 所屬分類: Eclipse

          主站蜘蛛池模板: 宁明县| 襄垣县| 泸州市| 岐山县| 渑池县| 麻栗坡县| 乌鲁木齐县| 吐鲁番市| 靖远县| 澄迈县| 大邑县| 海伦市| 察哈| 高州市| 洞头县| 根河市| 石门县| 榆树市| 临澧县| 焉耆| 巴东县| 土默特左旗| 昂仁县| 巴林左旗| 郴州市| 绥德县| 耿马| 黄骅市| 柳州市| 荔浦县| 蓬安县| 泽库县| 曲麻莱县| 额尔古纳市| 汝阳县| 株洲县| 奉化市| 苍南县| 清涧县| 枣庄市| 勃利县|