第一次使用java命令完全运行一个java project

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30682027/article/details/81564774

第一次使用java命令完全运行一个java project

参考:JAVAC 命令详解

1. 前言

参加工作将4年了,居然还没有完整的使用命令行编译过项目。都是使用IDE进行的,现在忽然有了兴致,试试吧

2. 项目简介

这是之前做的一个svn工具项目,比较简单,适合试试手。项目路径为:E:\workspace\svn-util-v4.4
这里写图片描述

2.1. java环境

如下图
这里写图片描述

2.2. 编译及运行步骤

  1. 打开cmd,且换到项目路径下

  2. 使用for /r %i in (*.java) do @echo %i>>java.list,将项目路径下所有java文件路径输出到java.list文件中
    for /r %i in (*.java) do @echo %i>>java.list是cmd的一个命令

  3. 使用javac -d ./bin -Djava.ext.dirs=./lib -encoding utf-8 @java.lst编译
    这里需要说明几点:

    a. 如果源文件数量多,则将源文件名列在一个文件中,名称间用空格或回车行来进行分隔。然后在 javac 命令行中使用该列表文件名,文件名前冠以 @ 字符。
    b. -encoding utf-8设置源文件编码名称。若未指定 -encoding 选项,则使用平台缺省的编码。因为我的项目设置的是utf-8所以这里使用utf-8
    c. -Djava.ext.dirs=./lib这个是编译时需要用到的lib,在我的项目中就是E:\workspace\svn-util-v4.4下的lib,所以直接使用./lib
    d. -d ./bin设置类文件的目标目录。如果某个类是一个包的组成部分,则 javac 将把该类文件放入反映包名的子目录中,必要时创建目录
    e. 这里还有个问题就是自定义conf下的配置文件没有生成到bin目录,所以需要手动拷贝到bin目录下

  4. 运行项目
    切换到bin目录下,执行java -Djava.ext.dirs=../lib com.svn.util.SvnMain
    说明:

    a. -Djava.ext.dirs=../lib指定运行时依赖的lib
    b. com.svn.util.SvnMainmain方法所在的类

  5. 参考eclipse的.classpath文件
    如下,在kind="src"中的path实际上就是要编译的java文件和实际运行要使用的配置文件。kind="lib"就是编译和运行时依赖的jar包

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" path="src"/>
	<classpathentry kind="src" path="conf"/>
	<classpathentry kind="lib" path="lib/sequence-library-1.0.3.jar"/>
	<classpathentry kind="lib" path="lib/sqljet-1.1.11.jar"/>
	<classpathentry kind="lib" path="lib/svnkit-1.9.2.jar" sourcepath="C:/Users/Administrator/AppData/Local/Temp/decompiler/source/svnkit-1.9.2-sources-1533874168439.jar"/>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0_43"/>
	<classpathentry kind="output" path="bin"/>
</classpath>

猜你喜欢

转载自blog.csdn.net/qq_30682027/article/details/81564774