java test - 打包一个java应用程序,在另一个linux机器上运行

时间:2012-03-09 03:33:57

标签: java linux package tar

我有一个Java测试应用程序。下面是导入部分的代码示例。我创建了一个快速/简短的bash脚本来构建应用程序/运行应用程序。一切正常。 Java测试运行。

我正在试图找出如何快速/轻松地“打包”Java应用程序(以及所有相关文件)以在另一个Linux机器上运行Java测试。

对解决方案的指示将不胜感激。

测试代码:

  import java.sql.*; 
  import java.sql.Connection;
  import java.sql.DriverManager;
  import java.sql.PreparedStatement;
  import java.sql.ResultSet;
  import java.sql.SQLException;
  import java.sql.Statement;
  import java.util.Date;

  import org.json.simple.*; // json package, download at http://code.google.com/p/json-simple/ 

  import java.net.URLDecoder;
  import java.net.URLEncoder;
  import java.lang.String.*;

  public class ms1 {
    private Connection conn = null;
    private Statement stmt = null;

 .
 .
 .

是否像做焦油一样简单?这是包装吗?试图了解这对于Java中的小项目是如何工作的。

更新::

测试全部来自cmdline。没有使用IDE / Eclipse。

我使用run / cmdline运行测试:

javac -classpath '/usr/share/java/json_simple-1.1.jar:/opt/selenium/selenium-server-standalone.jar:/apps/parseapp2/' ms1.java 'foo'

5 个答案:

答案 0 :(得分:0)

如果您使用的是Eclipse,请转到File > Export > Java > Executable Jar。然后输入名称并选择包含main方法的类。

答案 1 :(得分:0)

Java项目的tar类包格式是jar(惊喜!)。 :)

如果您下载了一个JDK,则包含jar,在linux上可能带有man jar,并带有HTML-doc:file:/// $ JAVA_HOME/docs/technotes/guides/jar/index.html 。

您的用户需要一个JVM运行时,它们的层次结构中的类(反映了包结构)和外部jar(在您的情况下是JSON包)。您通常会提供自己的课程,但也可能提供(如果许可证允许)外国罐子。

答案 2 :(得分:0)

档案>出口> Java> Runnable Jar>提取

将jar和jar_lib文件夹复制到另一个linux框

运行java yourjarfile.jar -lib yourjarfile_lib /

答案 3 :(得分:0)

如果这些任务是迭代的,我可能会创建一个带有一些目标的ant构建文件,如compile,jar和scp。在eclipse中创建ant构建文件应该很容易。您可以查看ant taskssteps的手册,在eclipse中创建ant构建文件。一旦创建,就像在控制台中一样轻松运行ant compile scp(示例)。

答案 4 :(得分:0)

首先,您需要学习如何在MANIFEST.MF文件中使用Class-Path来启用“java -jar parseapp.jar”(而不必指定完整路径)。将您的从属jar放置在主jar旁边的“lib”文件夹中,这样您就可以在Class-Path中拥有相对路径。

当它工作时,你基本上有三个选择:

  • 创建一个包含jar和支持jar的zip文件。然后,收件人必须解压缩zip,并调用主jar(例如,通过单击)
  • 使用one-jar将它全部包装在一个jar文件中,然后可以分发,然后用户调用(例如通过单击)。这里有魔力,可能是也可能不是一种表现形式。
  • 使用Java WebStart将您的应用程序放在Web服务器上,这样用户只需单击一个链接即可启动该程序。这主要用于GUI程序,但功能强大且易于维护。