You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ/Gradle打包Jar无法运行:主清单缺失+资源加载异常

问题:Gradle打包Jar后资源加载失败(空指针异常),IntelliJ内运行正常

已尝试多个解决方案(如执行java -cp app.jar main.Main指定主类运行),但IntelliJ/Gradle打包的app.jar无法正常运行。IntelliJ内运行项目无异常,打包后执行出现空指针异常,提示img为null,推测与资源文件夹未被正确打包有关。

错误栈

Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.awt.image.BufferedImage.getSubimage(int, int, int, int)" because "img" is null
        at entities.MiqoCharacter.loadAnimationMale(MiqoCharacter.java:280)
        at entities.MiqoCharacter.<init>(MiqoCharacter.java:50)
        at gamescreens.CharacterDisplayScreen.initClasses(CharacterDisplayScreen.java:33)
        at gamescreens.CharacterDisplayScreen.<init>(CharacterDisplayScreen.java:27)
        at main.Game.initClasses(Game.java:33)
        at main.Game.<init>(Game.java:22)
        at main.Main.main(Main.java:7)

资源加载方法代码

public static BufferedImage GetSpriteAtlas(String fileName) {
    BufferedImage img = null;
    InputStream is = AssetLoader.class.getResourceAsStream(fileName);
    if (is != null) {
        try {
            img = ImageIO.read(is);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                is.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    return img;
}

build.gradle配置

plugins {
    id 'java'
}
jar {
    manifest {
        attributes "Main-Class": "main.Main"
    }
}

group 'org.example'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
}

test {
    useJUnitPlatform()
}

MANIFEST.MF内容

Main-Class: main.Main

尝试了StackOverflow及YouTube上的多种方案仍未解决,问题表现为Jar未正确打包资源或无法检测主类。

内容的提问来源于stack exchange,提问作者Sage Belknap

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 07:01:03