从 Linux 终端编译运行 Eclipse Java 项目

开发 后端
假如你在linux系统下使用Eclipse开发一个Java项目,你可能会有从其他地方远程连接这个项目的需求。或许 你可以使用teamviewer远程连接linux桌面,但那经常会非常龟速。你也可以从常规的ssh终端修改、编译并运行你的Java项目。

假如你在linux系统下使用Eclipse开发一个Java项目,你可能会有从其他地方远程连接这个项目的需求。或许 你可以使用teamviewer远程连接linux桌面,但那经常会非常龟速。你也可以从常规的ssh终端修改、编译并运行你的Java项目。使用终端修 改、编译并运行远程eclipse项目则会快很多。本文就是告诉你如何在终端中编译运行eclipse项目。

用到的命令行

基本上只需要下面两个命令。-cp参数项用于配置类路径,它指向用到的class文件和jar文件。如果使用多个库,那么每一个都应该被包含在其中,以“.”分隔。

javac -cp “all jar file’s path” package/target.java
java -cp “all jar file’s path” package.target

An Example Eclipse Project 一个Eclipse项目例子

下文中,我在eclipse中新建一个Java项目。该项目包含一个package1中的类Test。Test使用了/lib/下的第三方库。

从Linux终端编译运行Eclipse Java项目

首先,cd到/src/directory文件夹下,然后使用以下命令编译项目。

javac -cp "/home/pc/workspace/TerminalEclipse/lib/commons-io-2.4.jar:
/home/pc/workspace/TerminalEclipse/lib/commons-lang-2.5.jar"
package1/Test.java

第二,使用以下命令运行项目。

java -cp ".:/home/xiaoran/workspace/TerminalEclipse/lib/commons-io-2.4.jar:
/home/xiaoran/workspace/TerminalEclipse/lib/commons-lang-2.5.jar"
package1.Test

注意:路径的***部分是 .,它指向当前路径。

编译过程会在/src/directory文件夹下产生.class文件。当你再次使用eclipse的时候可能会想把它们删除了。

潜在问题

如果你正在开发一个规模很大的项目,你就可能会使用很多的第三方库。你可以使用下面的代码生成路径字符串。

publicstaticvoid printAllJars(){
    String str ="/home/pc/workspace/TerminalEclipse/lib";
    file =newFile(str);

    StringBuilder sb =new StringBuilder();

    File[] arr = file.listFiles();
    for(File f: arr){
        if(f.getName().endsWith(".jar")){
            sb.append(f.getAbsolutePath()+":");
        }
    }

    String s = sb.toString();
    s = s.substring(0, s.length()-1);

    System.out.println(s);
}

 

责任编辑:王雪燕 来源: ImportNew
相关推荐

2021-12-20 14:22:07

Linux打印文件

2010-02-25 13:58:22

Linux JDK

2009-12-28 10:49:48

Linux JDK

2022-06-19 14:23:56

Linux

2023-03-07 10:50:42

Linux命令系统

2009-10-29 09:45:18

VirtualboxLinux操作系统

2012-11-06 10:02:04

JavaJadEclipse

2022-07-14 15:00:53

Linux 终端通知脚本命令

2015-01-27 23:21:53

Linux终端

2020-10-25 16:53:56

Linux 开源操作系统

2010-06-18 17:38:42

Linux Anacr

2021-11-04 09:15:58

终端Linux命令

2010-02-26 10:47:30

Linux Makef

2011-01-14 12:44:32

Linux PPCEclipseC

2019-05-29 09:05:13

DockerDockly容器

2014-07-04 09:47:24

SwiftSwift开发

2009-06-18 11:11:08

Java项目模型Eclipse

2016-11-02 09:49:21

Linux命令进程

2011-01-14 13:01:33

Linux PPCEclipseC

2009-12-16 14:10:42

Linux终端命令
点赞
收藏

51CTO技术栈公众号