buildscript {
repositories {
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
mavenLocal()
mavenCentral()
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT'
}
}
repositories {
mavenLocal()
mavenCentral()
jcenter()
}
apply plugin: 'net.minecraftforge.gradle.forge'
apply plugin: 'java'
apply plugin: 'eclipse'
version = "d"
group = "d"
archivesBaseName = "d"
compileJava {
sourceCompatibility = 1.8
targetCompatibility = 1.8
}
compileJava.options.encoding = 'UTF-8'
tasks.withType(JavaExec) {
jvmArgs('-Dfile.encoding=UTF-8')
}
minecraft {
version = "1.8.9-11.15.1.2318-1.8.9"
runDir = "run"
mappings = "stable_20"
makeObfSourceJar = false
}
dependencies {
compile 'com.google.code.gson:gson:2.8.9'
compile fileTree(dir: 'src/main/resources/libs/', includes: ['*.jar'])
}
processResources
{
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand 'version':project.version, 'mcversion':project.minecraft.version
}
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
마인크래프트 포지기반의 모드를 제작중 오류입니다
-
IDE(이클립스)에서 실행한 마인크래프트에서는 정상작동 합니다.
-
.jar 파일인 모드로 추출할려고 컴파일(gradlew build)하면 오류없이 정상 빌드됩니다.
-
만들어진 모드를 가지고 실제 마인크래프트에서 해당 라이브러리를 사용한 이벤트를 사용시 다음과 같은 오류가 납니다
ㄴ java.lang.NoClassDefFoundError: jaco/mp3/player/MP3Player -
해당 라이브러리는 등록되어 있지않아 직접 다운로드를 받아 해당 경로를 가지고 추가하는 방식을 썼습니다.
ㄴ compile fileTree(dir: 'libs', includes: ['*.jar']) -
위의 등록코드를 적지 않을 시빌드중(gradlew build) 라이브러리를 사용한 코드들이 오류가 나기에 경로의 문제이거나 하진 않을겁니다.
-
인게임에서 오류는 라이브러리의 클래스를 로드할 수 없다는 것으로 라이브러리가 제대로 등록되지 않은 것 같습니다.
해결방법이 있을까요
불러오는 중...