Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ProcessBuilder在Java中运行minecraft.jar_Java_Minecraft_Processbuilder - Fatal编程技术网

使用ProcessBuilder在Java中运行minecraft.jar

使用ProcessBuilder在Java中运行minecraft.jar,java,minecraft,processbuilder,Java,Minecraft,Processbuilder,我正在尝试用Java运行Minecraft.jar(游戏)。我尝试使用以下代码运行它: String LibsAndStuff = String.format( "%s/minecraft.jar:%s/lwjgl.jar:%s/lwjgl_util.jar:%s/jinput.jar", OSDetector.getMinecraftJarDiretoryFullPath(), OSDetector.getMinecraftJarDireto

我正在尝试用Java运行Minecraft.jar(游戏)。我尝试使用以下代码运行它:

String LibsAndStuff = String.format(
        "%s/minecraft.jar:%s/lwjgl.jar:%s/lwjgl_util.jar:%s/jinput.jar", 
        OSDetector.getMinecraftJarDiretoryFullPath(), 
        OSDetector.getMinecraftJarDiretoryFullPath(), 
        OSDetector.getMinecraftJarDiretoryFullPath(), 
        OSDetector.getMinecraftJarDiretoryFullPath());

ProcessBuilder pb = new ProcessBuilder("java", "-Xmx2048M", "-Xms512M", "-cp", 
        LibsAndStuff, String.format("-Djava.library.path=%s/natives", 
        OSDetector.getMinecraftJarDiretoryFullPath()), 
        "net.minecraft.client.Minecraft");
pb.directory(new File(OSDetector.getMinecraftJarDiretoryFullPath()));

try {
    Process p = pb.start();
} catch (IOException e1) {
    e1.printStackTrace();
}
OSDetector.getMinecraftJarDiretoryFullPath()
返回路径为.minecraft的字符串(例如“/home/user/.minecraft”)。Eclipse控制台中没有显示任何内容。我不知道出了什么问题,因为在bash中启动的完全相同的命令工作正常

@编辑
C:\Users\ukasz\AppData\Roaming\.minecraft\bin/minecraft.jar:C:\Users\ukasz\AppData\Roaming\.minecraft\bin/lwjgl.jar:C:\Users\ukasz\AppData\Roaming\.minecraft\bin/lwjgl\u util.jar:C:\Users\ukasz\AppData\Roaming\.minecraft\bin/jinput.jar

这就是那根绳子。我改变了/去了,但没用:你应该考虑从代码中删除那个诅咒词。关于主题:你能不能<代码> PrtLn\/Cord>你构建的类路径字符串?@ SkyDaI在一个编辑中进行了修改。@ XXAX每天我们都学习一些新的东西:只要在代码中的任何地方调用它一次,将其结果存储在一些引用中,如
String dir=OSDetector.getMinecraftJarDiretoryFullPath()
并在需要该结果的地方使用该引用,如
String.format(“%s/minecraft.jar:%s/lwjgl.jar:%s/lwjgl\u util.jar:%s/jinput.jar”,dir,dir,dir,dir)