.classpath文件的作用
可以參考.classpath文件的作用
.project文件的作用
確保你自己的eclipse能創建Java項目,並且正確編譯運行helloworld,給eclipse配置好了Java環境
基於 .classpath文件
,我們看來來不同版本的.project文件
對項目的影響
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="lib"/>
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="bin"/>
</classpath>
version 1
僅有一個項目名
.project文件內容
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>blockchain</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
</buildSpec>
<natures>
</natures>
</projectDescription>
項目截圖
version 2
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>blockchain</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
項目截圖
開心了,有了jre,maven也出來了,瀏覽每一個.java文件,發現沒有報錯,運行項目看看
運行項目后報錯:
錯誤: 找不到或無法加載主類 com.langdon.blockchain.Main
為什么?main函數明明已經寫好了,為什么會找不到呢?
我們看看.class文件
有沒有生成,發現項目里壓根沒有.class文件
,原來的項目沒有被eclipse編譯成功。
version 3
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>blockchain</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>sf.eclipse.javacc.javaccbuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
項目結構圖沒有變化
運行效果: 成功了,.class文件
成功出現在項目目錄下的bin文件夾
如果仍然報錯:嘗試修改.classpath文件
->保存->撤銷修改.classpath文件
->保存->運行項目->成功
(記得每次修改.project文件后都在eclipse里refresh一下項目)
一些結論
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
nature說明項目的性質,是項目的靜態屬性,可以為項目添加多個nature;
buildCommand是項目的動態屬性,說明需要用什么工具來構建項目;
也有說法是:nature-插件,buildCommand-加載方式