如何通过执行shell将参数传递给Jenkins作业中的JAR

时间:2017-07-15 19:02:07

标签: java jenkins

  1. 我是否需要在入口点类之一中使用主类?
  2. 我尝试添加主类,但是当我试图传递它的说法主类无法加载或找不到。
  3. 这是我使用的命令:

    jar -xvf jarname.jar 
    java -cp /path/filename.class $JOB_URL $USER $PASSWORD
    

    路径名是入口点的文件名,并且具有main()方法。

1 个答案:

答案 0 :(得分:1)

  

1)我是否需要在入口点类之一中使用主类?

是。并且传递参数不需要解压缩jar存档:请参阅“How do I pass parameters to a jar file at the time of execution?

java -jar jarname.jar  param1 param2

但这需要MANIFEST file inside the jar which reference the main class

Main-Class: MyPackage.MyClass

或者你可以使用-he'jar e'选项(如果你的jar没有Manifest.txt文件):

  

如果入口点类名称在包中,则可以使用“。” (点)字符作为分隔符。
  例如,如果Main.class位于名为foo的包中,则可以通过以下方式指定入口点:

jar cfe Main.jar foo.Main foo/Main.class

在这两种情况下,您都不必解压缩jar。