Eclipse使用
Eclipse使用
新建工程
选择Java project
设置项目名
更改工作空间
一开始打开eclipse的时候更改工作空间
eclipse的基本工程目录叫做workspace,每个运行时的eclipse实例只能对应一个workspace,也就是说,workspace是当前工作的根目录。
注:此处的Project Layout选择【create Separate folders for sources and class files】是指默认将.class文件和.java文分别放入到项目中的bin和src文件夹下。⏫
工程文件结构说明
新建好的项目中一个src和一个JRE,新建会默认创建SRC源代码目录,并默认创建一个bin目录作为输出目录,输出目录是指生成的class文件和配置文件地址。
查看文件夹可以看到
- bin目录是工程输出路径,存放了编译生成的.class文件;用Eclipse进行打包时根目录就是bin,用jar包调用工程的时候默认的路径也要以bin为准,到bin的层级数目就是最终的数目,因此可以说bin是最为重要的目录,而不是src;Eclipse直接运行时,是以工程的根目录作为基准目录。而打包成jar运行时,则是以bin目录作为基准目录.
- src目录为源码文件夹,存放的是.Java文件
- .classpath和.project为工程描述文件
使用Eclipse除了创建项目本身,还创建了两个附加文件—.classpath文件和.project文件。默认地,这两个文件如同其他以“.”开头的文件一样,通过过滤器查看的时候是隐藏的。
.classpath文件说明
.classpath文件用记事本打开可以看到:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre1.8.0_261"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
这个是eclipse .classpath文件内容
配置源文件目录、输出目录、引用的.jar等
.classpath文件用于记录项目编译环境的所有信息,包括:源文件路径、编译后class文件存放路径、依赖的jar包路径、运行的容器信息、依赖的外部project等信息。如果把该文件删除,则eclipse不能讲该工程识别为一个正常的java工程,仅仅当做普通的文件夹而导致不能正常运行。
①以”classpath”为根节点,每个“classpathentry”节点代表一个说明信息。
②每个“classpathentry”以“kind”属性指明类型,“path”指明路径。
③以上文件的所有内容,都是依赖项目中的“Java Build Path”内容改变而改变的,即对“Java Build Path”的所有操作都会反应到文件内容中。
kind="src"
src:即source 源文件,代表的是一个源文件,path=”src”是一个相对路径,相对.classpath文件本身,即path=”src”表示文件夹src与.classpath在同一个目录,且代表源文件。
<classpathentry kind="src" path="src"/>
kind=”src”的操作对应于“Java Build Path”的“Source”tab页
勾选原有的:
如下图,增加一个文件夹resource作为源文件,则.classpath文件增加内容
但是报错:Source folder 'src' in project 'myProj' cannot output to distinct source folder 'bin'
所以还是改回去吧,试了一下可以新建resource,但是不可以勾选原有的bin和settings,并且新建的并没有在classpath里面有改变。。。但是在目录中出现了
当然,做相应修改或删除,同样.classpath文件内容会相应改变。
另外,当指定属性combineaccessrules=”false”是则代表引入外部project,具体如下
kind="output"
output用于指定java源文件编译后的class文件存放路径,格式如下
<classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
path:代表存放class文件路径,同样是相对.classpath文件的路径,找到“output_test”,可以看到class文件的存放
假设修改输出文件路径,则相应内容也会改变
则.classpath文件内容修改为:
<classpathentry kind="output" path="bin/output_test"/>
JRE配置
path=”XXX”
用于指定jre容器的使用情况,可选择jre的不同来源,不同来源path的实际值会有些变化
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
注:
①选择”Workspace default JRE(jdk1.7)”,则值为
path="org.eclipse.jdt.launching.JRE_CONTAINER"
②选择“Alternate JRE”,则值为
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.7"
其中最后么的jdk1.7是我自定义的JRE名称
③选择”Execution environment”,即选择eclipse自带的内置jre,值为
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"
其中最后么的JavaSE-1.7是系统内置的JRE名称
另外属性值name=”owner.project.facets”
<attribute name="owner.project.facets" value="java"/>
应该是指定JRE容器的具体使用的模板,默认使用”java”,具体的没有探究。
导入java文件
注意:我开始选择的目录是工程根目录,这样文件会加载到根目录下,其实也就是没法运行的;
编译器无法识别java文件,因为编译器找不到路径(不认识这个文件)
将导入文件直接拖拽
提示: 如果导入的是同一个文件夹下的多个java文件,则可以 新建Package,命名同文件夹一致,然后导入该package,这样的好处是可以不用修改代码第一行“package pName” 。
更改编码方式
注:参考https://blog.csdn.net/pengmm1990/article/details/68951389