分类: LINUX
2012-01-09 16:59:34
在开始使用Eclipse的时候,会发现一个问题,那就是如何打开一个现有的Eclipse工程,开始在菜单中找了好久也没找到。
其实,Eclipse生成的结果不像VC,Jcreator那样可以直接打开,若要打开非workspace文件夹下的其他已有工程,可以打开菜单file->import→general→existing project into space.在select root directory中选中要打开的文件夹即可。此时如果选择copy existing project into workspace就会同时将文件拷贝到workspace下。这里首先要保证要保证Eclipse两个文件.classpath和.project还在,不然无法导入,就是说Eclipse的import只认自己家的东西。
如果要打开的工程与Eclipse的配置不同,在运行时会产生问题。解决方法是:
打开菜单project→properties修改。主要需要修改的是java build path项。
如何使用Eclipse导入并运行源码
由于eclipse用得不是很熟,还不知道怎么样把已有的文件导入到工程中来,网上研究,顺利解决。
我的源码存放地址是:
C:\Documents and Settings\Administrator\桌面\手机QQ2007正式版\src
创建eclipse工程就不赘述了,建立的工程文件目录是:C:\Documents and Settings\administrator\桌面\MyQQ
我使用的是eclipse3.2.1中文版,导入源码到工作空间中去,选择文件->导入,然后再选择文件系统,再选择要导入的源码的路径即可导入。导入后打开项目->属性对话框,在Java 构建路径中的源代码中选择想要编译的目录,并且可以设置输出路径,点OK后即可对所导入的源文件进行编译。十分方便。由于我导入的源文件下还有目录,所以这时会报错,因为导入后会按包的形式组织,所以会报以下错误:
The declared package does not match the expected package appendixaStringer.javaThinking in Java/appendixaline 12006年11月11日 14:11:203870
这时只要在程序的最前面加上package命令就可以了,例如对于以上的报错,需要加入package appendixa即可。编译后接着就是运行了,运行的时候要注意,需要在工作路径下按照包来调用,例如我的工作路径是\thinking in java\c04\,下有SimpleConstructor.java文件,编译完成后,需要在\thinking in java目录下输入:java c04.SimpleConstructor,这里包括了正确的包结构,这样才能正常运行。 没有包含正确的包结构或者没有在正确的路径下操作,则会报以下错:
Exception in thread "main" java.lang.NoClassDefFoundError: c04/SimpleConstructor
注意目录结构是/thinking in java\c04\SimpleConstructor,所以要在thinking in java目录下运行以下命令,注意要加包结构。
运行结果如下:
D:\javacard\Thinking in Java>java c04.SimpleConstructor
Creating Rock
Creating Rock
Creating Rock
Creating Rock
Creating Rock
Creating Rock
Creating Rock
Creating Rock
Creating Rock
Creating Rock
这是一个有关对象初始化和构造的程序。
碰到的金山词霸发现只有最大化和最小化,点击右下角图标出现不了金山词霸界面,任务栏上有这个图标,只有在任务栏上点右键进行最大化才能使用金山词霸,那么点击右下角图标打开词霸,它跑到哪儿去了呢,这个问题困扰了我好多天。今天到baidu上去查了一下,发现原来金山词霸已经在窗口界面的外面了,必须用键盘进行拖回来。这个问题第一次碰到。
网上查阅资料顺便转载别人写的东西,觉得不错,如下:
如何使用Eclipse导入并运行源码
如何使用Eclipse导入并运行源码(原创哦,如有转载,请注明作者forest077)
网上关于Eclipse配置和开发入门程序的文章很多,可是要么很粗浅,要么很高深,却很少看到讲解如何把别人的源码导入到自己的Eclipse环境中编译运行的描述。做为初学者,能够学习网上一些优秀源码是提高的必由之路,可是Eclipse却不象VC和Delphi那样容易上手,对于很多初学者来说,它似乎还是太难了点。在找不到很好的关于Eclipse入门教程的情况下,为了能运行网上下载的Java源码,我颇费了一些时间寻找如何正确的导入源码并运行的方法,不敢独美,特贡献出来与初学者共享。
运行环境:
Java EE 5.0
Eclipse 3.2.1中文版
源代码用例(都是Java Application):
仿真Windows记事本
连连看
上述的两个源代码在赛迪网上可以找到。关于JDK的配置、安装和Eclipse的安装本文不再赘述,读者可以很容易地找到相关的资料。本文只讲使用Eclipse来导入源代码的方法。
首先确保你的工作空间已经创建好,在我的机器上工作空间所在的目录是“e:\workspace”。源代码存放路径假设为“我的文档\cai\Java\一个仿windows的记事本”和“我的文档\cai\Java\连连看\kyodai”。
下面开始介绍导入源码的方法。
◎选择菜单“文件/新建/项目”,选择“Java项目”,弹出“创建Java项目”对话框。
◎在“创建Java项目”中输入“项目名”,项目名可以为任意名字,不必和main类的名字一样。这里假设为“Notepad”。
在“内容”中有两个单选按钮,视你的需要来使用。其中“在工作空间中创建新项目”会在你的工作空间中创建一个新目录,目录名与项目名一致;“从现有资源创建项目”可以在源码所在目录中直接编译运行,生成的class文件也会存放在源码目录中。
下面先讲“在工作空间中创建新项目”的方法。
◎在“内容”中单选“在工作空间中创建新项目”,点击“完成”按钮。此时在e:\workspace下生成Notepad目录。
◎下面需要导入源码到工作空间去。选择菜单“文件/导入”,选择“文件系统”。弹出“文件系统”对话框。
◎在“从目录”中选择源码存放目录“我的文档\cai\Java\一个仿windows的记事本”,勾选上所有的.java源码,其他的垃圾不要选上。下面又有两个选择:对话框下方有两个选项,若选择“创建完整的文件夹结构”,就会按源码所存放的路径完整地在工作空间中创建目录,创建完毕会由于main方法类的路径不对而在包资源管理器内的图标上显示叉叉,无法编译成功;若选择“只创建选择的文件夹”,则会在工作空间创建的目录下导入所有的文件而不会保留原目录,此时可以编译成功。
◎若选择“创建完整的文件夹结构”,导入完成后,选择菜单“项目/属性/Java构建路径/源代码”,点击“添加文件夹”,把子目录逐级点开,直到源代码所在这级目录为止,勾选上该目录。弹出的提示对话框点击确定即可。注意上级目录不要勾选,否则会报错。这样这种方法导入的源码也可以编译运行了。
◎注意若源代码中含有子目录,在main程序中会有import ...的语句,此时要注意import后面的目录级别,在选择Java构建路径时要勾选上import指明的上级目录名。例如,连连看代码中有子目录topbar,在main程序中有import kyodai.topbar语句,那么就要勾选到“我的文档\cai\Java\连连看\”这级目录,而非源码所在的“我的文档\cai\Java\连连看\kyodai”目录。
◎在连连看源码中,作者已经把所有源码都打包成了一个Jar,此时只需要添加该Jar包而不需要导入其他源码就可以运行了(但不能调试,因为Jar包中不含源码)。方法是创建完新项目后,选择菜单“项目/属性/Java构建路径”,点击“库”页,点击“添加外部JAR”按钮,选择源码自带的Jar包即可运行。
下面介绍“从现有资源创建项目”的方法。
◎在“创建Java项目”对话框中,点击“下一步”按钮,弹出“Java设置”对话框。
◎在“Java设置”对话框中选择“库”页,选择“添加JAR”,若找不到随源码提供的Jar包,就选择“添加外部JAR”。一般如果Jar存放的目录正确,在“添加JAR”中是可以找到该条目的。双击出现的Jar包即可添加进去。若不需要额外的库支持,则点击“完成”。
这样,用上面两种方法创建的项目就可以编译运行了。下面就介绍运行的方法。
◎选择菜单“Run/运行”,弹出“创建、管理和运行配置”对话框。
◎根据源码的种类在左边的列表中进行选择。我们用的两个例子都是Java应用程序,所以双击“Java应用程序”,在对话框右边可以输入运行的配置。
◎如果新建了项目还没有运行过,那么右边的“项目”栏缺省值即为刚创建的项目。在“名称”栏中输入运行配置的名称,建议与项目名称一致(也可以不一致),不能与其他的运行配置重名。
◎点击“Main类”栏右方的“搜索”按钮,一般只有一个main类,在弹出的对话框中双击下面那个栏目的main类即可。如果需要以其他的main方法做为程序入口,可以勾选上“Main类”栏下方的两个复选框,选择其他的入口。
◎如果需要增加特殊的环境变量,例如有的源码可能需要添加classpath环境变量,则可以在“环境”页中添加。
◎运行配置中的内容也会同样反映在调试配置中,运行和调试使用相同的配置。
创建了一堆新项目后,包资源管理器中会有一堆乱七八糟项目,有些是你需要的,有些是早已废弃不用的,你可以删除那些不用的项目,方法是右键点击该项目,选择“删除”。这里要提醒读者一下的是,删除对话框有两个选项,问你是否删除该项目目录下的内容,缺省是“不删除内容”,如果选择删除,那么那个目录就整个被删除掉了,如果你这个目录下的东西还有用,那你只好哭了。
删除掉没用的项目后,运行/调试对话框中多余的配置也可以删除,方法是右键点击不用的配置名,选择删除。
好了,这是我初学Eclipse的一些心得,希望能对广大想要使用Eclipse又担心它烦琐的初学者有些帮助。
碰到java.lang.NoClassDefFoundError错误可以如下解决:
应该这样检查你的环境和你的操作:
1、你的文件名对吗?
Java要求你的文件和你的类名严格对应的。
比如 public class HelloWorld{ .....
那么文件名一定只能是HelloWorld.java,看仔细了!
2、你的程序中有main方法吗?参数什么的对吗?
main方法的声明应该是这样子的:
public static void main(String[] args)
事实上如果你用开发工具来做的话,是不会错的。如果你用UltraEdit之类的来写程序的话,就一个字不要改的照抄吧!
3、记住,javac后面跟的参数是文件名,但java 后面跟的是类名!
这是我开始学JAVA是犯的错,java HelloWorld.class,然后就报错。后来才弄明白,应该是java HelloWorld。
4、设置了classpath了吗?
不仅是在安装JDK时要设置的内容,一般来说最好还要自己设置一个目录来存放自己的类文件的。比如d:\class目录。
设置classpath=%classpath%;d:\class
那么,现在将HelloWorld.class文件COPY到d:\class目录下,再java HelloWorld应该就OK了。
5、结合第3点和第4点
如果你的类是属于某一个包的,比如这样一个类sony.test.HelloWorld,那么按照我在第4点中说的目录来说,就应该将HelloWorld.class文件存放到d:\class\sony\test\目录下。
执行的时候应该参考第3点中说的,按类名执行:java sony.test.HelloWorld。
明白了吗?一直我也想不出还会有什么理由造成这个出错信息了!如果有哪位兄弟想到了就补充一下吧!
其实如果你使用了一些比较好的编程工具的话,根本就没有机会碰到这个错误的,至少我在使用了VisualAge for Java之后,就没有这样的事情了。
好啦,不说了,祝同志们好运吧!
过了这第一道门,后面的就比较简单啦!
FROM NET.