【问题标题】:Is It Possible To Create a .jar File That Runs An Existing .bat File?是否可以创建运行现有 .bat 文件的 .jar 文件?
【发布时间】:2015-06-11 20:58:06
【问题描述】:

我有一个需要从 .jar 可执行文件运行的 .bat 文件。我环顾四周,找不到明显的方法......无论如何这可以做到吗?帮助!如果有帮助,这是我现有的 .bat 代码:

@ECHO OFF

:: When setting the memory below make sure to include the amount of ram   
::      letter. M = MB, G = GB. Don't use 1GB for example, it's 1G ::

:: This is 64-bit memory ::
set memsixtyfour=2G

:: This is 32-bit memory - maximum 1.2G ish::
set memthirtytwo=1G

:: Don't edit past this point ::

if $SYSTEM_os_arch==x86 (
  echo OS is 32
  set mem=%memthirtytwo%
) else (
  echo OS is 64
  set mem=%memsixtyfour%
)
java -Xmx%mem% -XX:MaxPermSize=256M -jar forge-1.7.10-10.13.2.1277-universal.jar nogui
PAUSE

【问题讨论】:

    标签: java batch-file jar executable executable-jar


    【解决方案1】:

    我认为您正在寻找的是可以进行系统调用的运行时类。

    这是我将使用的代码:

    Runtime.getRuntime().exec("cmd /c start your/path/yourbat.bat");
    

    【讨论】:

      【解决方案2】:

      尝试将此添加到您的 java 代码中。

      Runtime.getRuntime().exec("cmd /C start filename.bat");
      

      【讨论】:

      • 对不起,作为一个完全的java初学者,我真的不知道从哪里开始,做这个。是否有我需要在记事本文件等中创建的文件...谢谢
      • 您从 java 应用程序创建您的 jar 文件。所以你应该有一些java文件。您必须修改尝试运行 bat 文件的 java 文件。如果还不清楚,请分享您的 java 代码。
      • package com.example.helloworld; import java.io.IOException; /** * Created by Bob on 12/06/2015. */ public class HelloWorld { public static void main(String[] args) { try { Runtime.getRuntime().exec("cmd /C start C:\\Users\\Bob\\Desktop\\ModdedServer\\MinecrackNetwork\\LaunchServer.bat"); } catch (IOException e) { e.printStackTrace(); } } }
      • 这是我当前的代码,它成功启动了 .bat 文件。但是,当 .bat 启动时,控制台会读取 .bat 文件无法找到它需要运行的文件。而运行 .bat 文件通常会发现这些文件正常,并且运行成功。
      • 根据您的评论,我可以说您的初始查询已经解决。关于您的第二个查询,尝试修改您的 bat 文件代码并将这一行添加到您的 bat 文件中: java -jar %~dp0yourjarfile.jar %*
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 2016-08-17
      • 2013-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多