您的位置:首页 > 编程语言 > Java开发

在命令行模式下如何编译运行Java代码

2016-12-14 20:07 302 查看
由于已经习惯了在Windows环境中进行开发,最近在尝试将开发环境转移到Linux上面。遇到一篇值得参考的外文,特翻译记录一下。【只翻译了部分】

一直被集成开发环境和自动构建工具“溺爱”着,我最近意识到我居然一点儿都不会在命令行模式下去运行Java代码。我花五分钟时间写了一段代码,花费很久时间去编译。我想是时候做一点儿研究了。

任务:一个相对标准的Java工程,将包含这样3个顶层文件夹

/bin:空文件夹,将会包含编译之后的.class文件

/lib:包含第三方的jar包

/src:包含.java源文件

我们的任务是在此工程的根文件夹下,编译与运行此工程。我们将以windows操作系统为例来进行说明。(在Unix系统环境中,与windows仅仅存在分隔符的差异,Unix中是以冒号:作分隔符,Windows中以分号;作分隔符)

编译java代码

第一步是将普通文本.java源程序编译为java字节代码(.class文件),使用javac命令来完成。假设我们在此工程的根文件夹下,将尝试将Application.java编译到bin文件夹中,并且Application.java是位于com.example包中的,它也用到了lib文件夹下的lib1.jar与lib2.jar文件,编译命令如下:

javac -d bin -sourcepath src -cp lib/lib1.jar;lib/lib2.jar src/com/example/Application.java


编译成功之后,bin/com/example/Application.class文件将被创建。如果Application.java用到了工程中的其他类,它们也将会被自动编译并且输出到对应的文件夹。

运行java代码

使用java命令去运行我们刚刚编译得到的.class文件。假设我们在此工程的根文件夹下,将运行Application.java,其Application.java是位于com.example包中的,它也用到了lib文件夹下的lib1.jar与lib2.jar文件,运行命令如下:

java -cp bin;lib/lib1.jar;lib/lib2.jar com.example.Application


注意到,这里我们并没有使用文件名,仅仅是类名,基于提供的路径下,java可以找到类对应的文件。

原文:

http://www.sergiy.ca/how-to-compile-and-launch-java-code-from-command-line/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java