eclipse .project文件 .classpath文件的作用


.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>

項目截圖

image_1cdfbprt71qen1g617the8m151c29.png-24.9kB

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>

項目截圖

image_1cdfbvjdvs7p1adgrp1eqb6md2m.png-23.9kB

開心了,有了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-加載方式


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM