如何在没有IDE的情况下设置Java工作区

如何在没有IDE的情况下设置Java工作区,java,jar,compilation,executable-jar,workspace,Java,Jar,Compilation,Executable Jar,Workspace,我通常使用intellijidea或Eclipse等IDE进行编码,但由于一些原因,我不再能够访问IDE,我希望能够通过ssh终端在远程Linux机器上用Java进行编码。 只需几个类就可以制作简单的程序很容易,但我的一些项目有几个库和几个单独的.java文件。我还需要导出到一个.jar文件 例如,我有以下文件组织: project/ src/ a.java b.java c.java libs/ lib1.jar lib2

我通常使用intellijidea或Eclipse等IDE进行编码,但由于一些原因,我不再能够访问IDE,我希望能够通过ssh终端在远程Linux机器上用Java进行编码。 只需几个类就可以制作简单的程序很容易,但我的一些项目有几个库和几个单独的.java文件。我还需要导出到一个.jar文件

例如,我有以下文件组织:

project/
   src/
      a.java
      b.java
      c.java
   libs/
      lib1.jar
      lib2.jar
   out/
      export_here.jar
   someconfig.conf
java应用程序由a、b和c.java文件组成,使用库lib1和lib2,文件someconfig.conf需要位于导出jar中

我想知道如何轻松编译和构建这样的项目。

换句话说,我只想知道如何以正确的方式将我的项目导出到可运行的jar中

我希望这可以通过几个命令来完成。如果是这样的话,我计划制作一个shell脚本来自动化一切


提前谢谢

正如其他用户所建议的,您需要使用构建管理工具来完成这项工作,如
Ant、Maven等
。我经常使用Ant quiet来执行此类自动化任务。要安装和使用Ant,请参考

在此之后,主要任务是编写自动化脚本,这在ant world中称为构建xml。以下是一个示例build.xml文件,您可以从以下开始参考:

<project>

    <target name="clean">
        <delete dir="build"/>
    </target>

    <target name="compile">
        <mkdir dir="build/classes"/>
        <javac srcdir="src" destdir="build/classes"/>
    </target>

    <target name="jar">
        <mkdir dir="build/jar"/>
        <jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
            <manifest>
                <attribute name="Main-Class" value="oata.HelloWorld"/>
            </manifest>
        </jar>
    </target>

    <target name="run">
        <java jar="build/jar/HelloWorld.jar" fork="true"/>
    </target>

</project>

一般来说,你可以在

创建build.xml后,如果build.xml位于当前目录中,您可以通过
ant
ant
运行ant


希望这能帮助您朝着正确的方向前进

为什么不为您的开发提供一个web gui呢?比如codenvyuse一个像Ant或MavenIt这样的构建系统,这里很难解释,但是Maven可以帮助你,因为你只需要一种方法来组织你的代码、jar、依赖项、资源等等@VeenarM我正在为此使用一个web gui,但我还没有找到一个可以自动导出像这样复杂项目的gui。我需要使用终端。我对Maven几乎没有经验,对Ant也没有经验。你能解释一下我是如何设置的吗?很高兴这对你有帮助。享受编码乐趣:)