【问题标题】:How to compile java files for minecraft with command prompt, separately from minecraft如何使用命令提示符为 minecraft 编译 java 文件,与 minecraft 分开
【发布时间】:2011-12-09 20:49:37
【问题描述】:

所以,我实际上主要是在 python 中编码,但我需要在 java 中做一件事,并且没有 java 经验,我真的不明白它是如何工作的。

我的程序创建 java 文件,然后使用命令提示符编译它们,并将它们放入 minecraft.jar,但我真的不明白我需要在命令提示符中编写什么来将类路径设置为 minecraft.jar。尤其是因为我需要它才能在每个人的计算机上工作,而且我不知道我的程序(以及 java 文件)在哪里。

谁能帮我解决这个问题?

编辑: 好的,所以我尝试这样做:

javac -classpath %appdata%\.minecraft\bin\minecraft.jar BLOCK1.java 

它给了我这个错误:

LLBLOCK1.java:3: error: cannot find symbol
public class LLBLOCK1 extends Block
                              ^
  symbol: class Block
LLBLOCK1.java:5: error: cannot find symbol
    private World worldObj;
            ^
  symbol:   class World
  location: class LLBLOCK1
LLBLOCK1.java:12: error: cannot find symbol
        public boolean blockActivated(World world, int i, int j, int k, EntityPlayer entityplayer)
                                      ^
  symbol:   class World
  location: class LLBLOCK1
LLBLOCK1.java:12: error: cannot find symbol
        public boolean blockActivated(World world, int i, int j, int k, EntityPlayer entityplayer)
                                                                        ^
  symbol:   class EntityPlayer
  location: class LLBLOCK1
LLBLOCK1.java:9: error: cannot find symbol
        super(i, j, Material.wood);
                    ^
  symbol:   variable Material
  location: class LLBLOCK1
LLBLOCK1.java:14: error: package Block does not exist
world.setBlockWithNotify(i + 0, j + 0, k + 0, Block.stone.blockID);
                                                   ^
6 errors

我的类路径写错了吗?

【问题讨论】:

    标签: java class compilation javac minecraft


    【解决方案1】:

    minecraft.jar 几乎总是位于

    C:\Users\User_Name\AppData\Roaming\.minecraft\minecraft.jar
    

    您可以使用批处理语言:

    %appdata%/.minecraft/minecraft.jar
    

    但是您可能还想先备份它,复制并重命名 minecraft.jar,这样如果出现任何严重错误,您总是可以更轻松地恢复它。

    【讨论】:

    • 我想我可能写错了类路径。我把错误信息放在我的第一篇文章中。
    • 是的,如果您在错误的每一行之前放置 4 个空格或 1 个制表符,将其显示为代码,并且更易于阅读,这可能会有所帮助。
    • 另外,你所有的错误都来自 minecraft 文件本身,LLBLOCK1 是什么?如果您不提供代码,人们将无法帮助调试错误。这些错误似乎与编译 jar 文件无关,这些错误与您制作 mod 的关系更多
    【解决方案2】:

    如果你正在编译 jar,你可以输入 jar 的输出位置:

    -jar cvfm c:/users/matt/documents/Minecraft.jar manifest.txt *.class
    

    如果您要创建自己的 jar,我相信这会起作用。这会比直接编辑 Minecraft jar 更容易。

    【讨论】:

    • 我实际上是在编译一个类文件,并将其放入一个预先存在的 jar 中。
    • 是的,但是,很有可能,在开始时添加所有文件,然后您就会知道位置和更多信息。只是一个建议
    • 它给了我这个错误:错误:无法访问 jarfile cvfm
    猜你喜欢
    • 2016-05-16
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-02
    • 1970-01-01
    相关资源
    最近更新 更多