详解java源文件涉及到的package问题

时间:2007-01-23 13:31:54  来源:  作者:
    在刚开始学java的时候,有很多人搞不清: 在java中,含有package的java源文件如何进行编译和执行。Yeb第一天空网络
我来总结一下:Yeb第一天空网络
Yeb第一天空网络
首先建立一个等式 (等式为自我定义的,你把full_dir写成whole_dir, globe_dir都无所谓):Yeb第一天空网络
Yeb第一天空网络
Yeb第一天空网络
或者  (dir: directory)Yeb第一天空网络
full_dir = base_dir + package_dir    Yeb第一天空网络
Yeb第一天空网络
我来解释一下:Yeb第一天空网络
full_path(full_dir) 全路径就是你的*.java源文件所在的整个路径(文件目录)Yeb第一天空网络
imageYeb第一天空网络
full_path="e:\temp\src\org\youway\samples\test"Yeb第一天空网络
Yeb第一天空网络
package_path(package_dir)路径就是在*.java源文件中package部分所编写的路径(文件目录)Yeb第一天空网络
imageYeb第一天空网络
可以对应package_path="\org\youway\samples\test"Yeb第一天空网络
Yeb第一天空网络
Yeb第一天空网络
base_path(base_dir)基本路径就是你执行编译或执行命令所在的路径(文件目录)Yeb第一天空网络
Yeb第一天空网络
通过等式:full_dir = base_dir + package_dir Yeb第一天空网络
Yeb第一天空网络
可得:base_dir = full_dir -  package_dir Yeb第一天空网络
Yeb第一天空网络
        = "e:\temp\src\org\youway\samples\test" -  "\org\youway\samples\test"Yeb第一天空网络
Yeb第一天空网络
        = "e:\temp\src"Yeb第一天空网络
Yeb第一天空网络
所以,Yeb第一天空网络
Yeb第一天空网络
imageYeb第一天空网络
Yeb第一天空网络
我们选择"e:\temp\src"为编译,运行目录Yeb第一天空网络
Yeb第一天空网络
分别调用命令Yeb第一天空网络
Yeb第一天空网络
base_dir>javac package_dir\*.javaYeb第一天空网络
Yeb第一天空网络
base_dir>java package_dir\*Yeb第一天空网络
Yeb第一天空网络
Yeb第一天空网络
至此,大家是否可明确关于package的基本问题。这是我们以后整体编译调试项目文件的一个基础。Yeb第一天空网络
Yeb第一天空网络
在这个问题的背后,其实是jvm如何装载文件的策略问题和格式规定问题。Yeb第一天空网络
Yeb第一天空网络
我们在配置classpath时,是否注意那个".;"圆点,那个圆点就是我们所说的base_dirYeb第一天空网络
Yeb第一天空网络
我们如果在使用ant时,是否注意了build.xml的第一行中关于basedir的属性值。Yeb第一天空网络
Yeb第一天空网络
<project name="proname" default="all" basedir=".">

文章评论

共有 位天空网友发表了评论 查看完整内容

特别推荐
  • 文字广告
  • 文字广告
  • 文字广告
  • 文字广告
站长黑板报

24小时热门信息