javac 编译引用外部指定jar包进行编译和执行编译后的class文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javac 编译引用外部指定jar包进行编译和执行编译后的class文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1763字,纯文字阅读大概需要3分钟。
内容图文
1.libs新建文件夹存放依赖所有jar包
2.cmd 执行:
2.1
javac -encoding UTF-8 -classpath .;C:\Users\chenquan\IdeaProjects\Toy\libs\commons-codec-1.12.jar;C:\Users\chenquan\IdeaProjects\Toy\libs\commons-lang3-3.9.jar -d . C:\Users\chenquan\IdeaProjects\Toy\src\test\SignNatureTest.java
2.2
javac -encoding UTF-8 -classpath .;C:\Users\chenquan\IdeaProjects\Toy\libs\commons-codec-1.12.jar;C:\Users\chenquan\IdeaProjects\Toy\libs\commons-lang3-3.9.jar -d . C:\Users\chenquan\IdeaProjects\Toy\src\test\SignNatureTest.java
1. encoding 防止中文乱码 2. -classpath 指定class文件路径 3. -d . 会在当前执行目录下生成 一个java所在的包名的(这里我的是test)目录,以及编译后的class文件 4. 指定要被编译的java文件
3.运行编译的class文件:最开始一直报无法找到主类问题,郁闷,后面查了下资料发先这个要带class文件的package的包名(这里是test)与python -m moudle.class.method 雷同,简直了哈哈哈
3.优化,由于依赖包很多,不可能每个都敲上去吧:
path_jars 可以是相对路径也可以是绝对路径
java -Djava.ext.dirs=path_jars package.className
java -Djava.ext.dirs=C:\Users\chenquan\IdeaProjects\Toy\libs test.SignNatureTest
java -Djava.ext.dirs=./ test.SignNatureTest
C:\Users\chenquan\IdeaProjects\Toy\libs>java -Djava.ext.dirs=./ test.SignNatureTest
&k1=values1&k2=33
MD5string is: 832c599beef71cce2ca7e3953b4dc5fb2019-08-03 19:23:02
4.批量依赖编译:
javac -encoding UTF-8 -Djava.ext.dirs=./ -d . C:\Users\chenquan\IdeaProjects\Toy\src\test\SignNatureTest.java
javac -encoding UTF-8 -Djava.ext.dirs=./ C:\Users\chenquan\IdeaProjects\Toy\src\test\SignNatureTest.java
发现一个有趣的事情: 不指定classpath 和 d .生成的位置会默认到.java所在包下面:
致谢这些良心博主:https://blog.csdn.net/yiluoAK_47/article/details/81975536
https://blog.csdn.net/tuohuang0303/article/details/84304995
https://blog.csdn.net/myfmyfmyfmyf/article/details/53179395
以上都是命令行操作对于IDEA其实已经有了手动编译的功能,只不过要求你手动配置libarary解决代码引用jar包类,在进行recompile:
原文:https://www.cnblogs.com/SunshineKimi/p/11295845.html
内容总结
以上是互联网集市为您收集整理的javac 编译引用外部指定jar包进行编译和执行编译后的class文件全部内容,希望文章能够帮你解决javac 编译引用外部指定jar包进行编译和执行编译后的class文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。