daixj110 发表于 2013-1-15 08:19:31

dos下调试java程序

假定package为mypackage,main类为Main.java,则
需把main放在mypackage文件夹下

编译没什么特别的:
javac mypackage\Main.java
这样会生成一个文件夹mapackage,里面包含Main.class

然后运行的时候要这样(不要进mypackage那个文件夹):
java mypackage.Main

在刚开始学java的时候,有很多人搞不清: 在java中,含有package的java源文件如何进行编译和执行。
我来总结一下:

首先建立一个等式 (等式为自我定义的,你把full_dir写成whole_dir, globe_dir都无所谓):


或者(dir: directory)
full_dir = base_dir + package_dir   

我来解释一下:
full_path(full_dir) 全路径就是你的*.java源文件所在的整个路径(文件目录)

full_path="e:\temp\src\org\youway\samples\test"

package_path(package_dir)路径就是在*.java源文件中package部分所编写的路径(文件目录)

可以对应package_path="\org\youway\samples\test"


base_path(base_dir)基本路径就是你执行编译或执行命令所在的路径(文件目录)

通过等式:full_dir = base_dir + package_dir

可得:base_dir = full_dir -package_dir

      = "e:\temp\src\org\youway\samples\test" -"\org\youway\samples\test"

      = "e:\temp\src"

所以,


我们选择"e:\temp\src"为编译,运行目录

分别调用命令

base_dir>javac package_dir\*.java

base_dir>java package_dir\*


至此,大家是否可明确关于package的基本问题。这是我们以后整体编译调试项目文件的一个基础。

在这个问题的背后,其实是jvm如何装载文件的策略问题和格式规定问题。

我们在配置classpath时,是否注意那个".;"圆点,那个圆点就是我们所说的base_dir

我们如果在使用ant时,是否注意了build.xml的第一行中关于basedir的属性值。

<project name="proname" default="all" basedir=".">

文章转载自网管之家:http://www.bitscn.com/pdb/java/200709/110384.html
页: [1]
查看完整版本: dos下调试java程序