2013-06-19 29 views
-1

我目前正在与我和我的朋友在Java中进行一个简单的RPG游戏。我正在做的事情之一是通过.txt文件绘制基于图块的地图,这样我可以轻松地存储和编辑地图。目前,我加载地图是这样的:如何使用相对文件夹依赖关系在Netbeans中构建.jar?

enter image description here

这里是项目是如何组织目前:

enter image description here

我的问题是,在Netbeans的,我怎么建立这样编译当我做一个干净的编译时,它会自动将.txt文件包含在正确的路径中,这样我就可以将.jar发送给想玩的朋友了。 (或发送包含.jar和/Maps/map1.txt文件的.zip)任何解决方案都有帮助,谢谢你们!

+2

两种方式。您可以在'-post-jar'目标上修改'build.xml',或者您可以将该文件保存为捆绑资源(在jar中)。 – MadProgrammer

+0

jar是zips,顺便说一句。压缩一个罐子没什么用处。 – scottb

+0

如何执行前者?我从来没有摆弄过build.xml,也不知道从哪里开始。 – user2467047

回答

1

正如MadProgrammer所说,您可以在-post-jar目标上编辑您的build.xml。为此,请参阅this链接,this链接和this问题。

  1. 如果您还必须包含库,请尝试一个简单的DOS脚本。照常使用NetBeans构建Java项目,然后在NetBeans项目目录中创建一个名为'NewDist'的目录,并创建一个名为JarMaker.bat的文件。这是脚本。

    @echo off 
    echo * -------------------------------------------------------- * 
    echo * -  JarMaker V 2.0.0 - For Netbeans Projects  - * 
    echo * -------------------------------------------------------- * 
    echo 1) Creating Temporary Directory 
    mkdir classes 
    echo 2) Copying Library Jars 
    xcopy /s /y ..\dist\lib\*.jar classes >> nul 
    cd classes 
    echo 3) Deflating Library Jars (this may take a while) 
    for /f %%a IN ('dir /b *.jar') do jar xf %%a >> nul 
    del *.jar >> nul 
    cd .. 
    echo 4) Deflating Main Program Jar 
    xcopy /y ..\dist\*.jar classes >> nul 
    cd classes 
    for /f %%a IN ('dir /b *.jar') do jar xf %%a >> nul 
    del *.jar >> nul 
    echo 5) Creating Unique Jar (this may take a while) 
    jar cvfm ../dist.jar META-INF/manifest.mf ./ >> nul 
    for /f %%a IN ('dir /b ..\..\dist\*.jar') do ren ..\dist.jar %%a >> nul 
    cd .. 
    echo 6) Removing Temporary Files 
    rmdir /s /q classes >> nul 
    echo * -------------------------------------------------------- * 
    echo * -   JarMaker V 2.0.0 - Process Complete   - * 
    echo * -------------------------------------------------------- * 
    

Source

相反,如果你想包括图像,take a look at this question

+0

所以我试过这个: http ://i.imgur.com/jKc3jVu.png 它仍然不会加载地图。 – user2467047

+0

尝试在最后一行“”的正上方添加。 如果它不适合你,请检查我编辑的答案。 – Federico

相关问题