【问题标题】:Run jar file in command prompt [duplicate]在命令提示符下运行 jar 文件 [重复]
【发布时间】:2011-08-12 02:39:15
【问题描述】:

我们如何在命令提示符下运行 jar 文件?

【问题讨论】:

    标签: java jar


    【解决方案1】:

    试试这个

    java -jar <jar-file-name>.jar
    

    【讨论】:

    • 这将在创建的 jar 文件是可运行的 jar 时起作用。
    • 更多时候你使用'.jar',不能正常工作,你需要用中间句子调用。谢谢:)
    • 请注意,如果您的应用程序使用 Web 框架,则可能需要传入更多参数,例如使用 dropwizard...java -jar myapp.jar server xxx.yml
    • 使用这些命令,您可以使用后台进程运行 jar 文件。 nohup java -jar /web/server.jar &
    【解决方案2】:

    如果您没有在清单中定义入口点,则调用 java -jar foo.jar 将不起作用。

    如果您没有清单或运行与清单中指定的主类不同的主类,请使用此命令:

    java -cp foo.jar full.package.name.ClassName
    

    另请参阅有关如何使用入口点创建清单的说明: https://docs.oracle.com/javase/tutorial/deployment/jar/appman.html

    【讨论】:

    • 如果您想运行与清单中指定的不同的主类,这也适用。
    • 对于开发者来说,我认为这是比 Bala R 更好的答案,尽管理想情况下它们应该结合起来
    • 我会说这应该是公认的答案,而不是另一个。
    • 如果我没有 main 方法怎么办?我想使用带参数的静态方法
    • @MoxGeek 你需要一个名为main 的静态方法。我认为没有办法解决这个问题。您仍然可以编写自己的 Main 类并从那里导入您的其他类。传递给主方法的额外参数就在您的full.package.name.ClassName 之后。你也可以看看 java REPL,比如 jshell 并导入你需要的东西,这个解决方案会感觉更像“脚本”风格。
    【解决方案3】:

    java [any other JVM options you need to give it] -jar foo.jar

    【讨论】:

    • -D 参数在 -jar 之前!谢谢我需要那个
    【解决方案4】:

    您可以像这样从命令行运行 JAR 文件:

    java -jar myJARFile.jar
    

    【讨论】:

    • 在接受答案前 2 秒回答做得很好 :-)
    猜你喜欢
    • 2016-10-14
    • 2015-03-28
    • 1970-01-01
    • 2013-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多