Java 同一个包在cmd上多文件编译

Java 同一个包在cmd上多文件编译,第1张

javac的编译单位其实就是单个的java文件,为了达到同时编译多个java文件的目的,可以将所需编译的java文件路径保存在一个txt中,比如sourcelist.txt,以换行为分隔符(这个过程称为类文件注册)。这些java文件没有彼此联系的必要,它们可以是隶属不同的包、在不同的文件夹下(当然建议包路径相同的java类文件放在同一文件路径下),javac命令只会一行一行地读取其中的记录,枯清作为一个单位进行类编译。

举例说明。假设你的这个包放在src文件夹下,src的父目录为project,sourcelist.txt也事先新建在project文件夹下。首先将这个包中你需要编译的java文件相对于src的路径(如src\com\test\Test.java)注册到sourcelist.txt文件中;接着在project文件夹中新建一个bin文件夹(或者class文件夹,命名随你乐意取),用以编译后class文件的放置(这个配以javac命令中-d选项去理解);如果还有其他类库(如jxl.jar或者mysql.jar),建议在project目录下新建一个lib(同样命名不限)文件夹,然后复制到该文件夹下(配以-classpath选项理解);最后检查上述准备工作都完成,win + R、输入cmd都不用讲,现在在cmd中用cd命令切换到project目录,然后输入命令:

javac -classpath lib/jxl.jar -sourcepath src @sourcelist.txt -d bin

现在就很好理解了。-d选项就是destination的意思,即生成class文件被送到该选项后面的bin文件夹;-classpath就是将你要用到的jar包注册到类加载路径中;-sourcepath就是告诉javac命令去哪里找类文件。

最后呢,为了方便,可以在project文件夹下新建一个bat文件,并输入以下内容:

javac -classpath lib/jxl.jar -sourcepath src @sourcelist.txt -d bin

@pause

这样没磨前每次直接点击即可,而你需要编译其他包的或者其他游逗java文件,直接在sourcelist.txt文件中添加或修改。这其实也是一种“弱耦合”、模块化的表现。

1.利用-cp

cd xxx

dir *.java/s/b >srclist.txt

or dir x:/yyy/zzz/*.java/s/b >srclist.txt

javac -cp .xxx/yyy/zzz.jarx/y/z.jar -d classes @srclist.txt

2.直接使用

这个,主要是在做一个独立的Java项目,它不依赖IDE,同时要在别人电脑上编译运行

下面编译运行用到了jar包、properties文件。首先进入项目的根目录下,注意:每一行,表示:DOS系统将执行的指令。

G:

cd testJava

上面,两个命令为模拟,进入项目汪运根目录(具体目录,根据自己程序所在目录)。

javac -classpath .../previousRecord.properties../lib/jtds-1.2.5.jarcom/cjb/properities/jdbc.properties com/cjb/jdbc/*.java com/cjb/client/*.java -encoding UTF-8

上面命令,表示:编译com/cjb/jdbc下所有java类和com/cjb/侍扰client下所有java类,这些类用到了previousRecord.properties文件(它的路径是相对的)和jtds-1.2.5.jar的文件jar包(它的路径也是相对的),同时用的编码是UTF-8。

java -Xms64m -Xmx512m -cp .../previousRecord.properties../lib/jtds-1.2.5.jarcom/cjb/properities/jdbc.properties com/cjb/困谈梁client/MailDispatcherOperation

上面命令,表示:执行com/cjb/client下的MailDispatcherOperation.class(它里面有Main函数)。

1,使用doc命令进入到该目录

2,在该目录下输入编译命哗丛令键悉javac *.java

3,java 命令运行相应的稿芦乎字节码文件


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12269610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存