Thermos

Доброго времени суток. Собирал ли кто-нибудь тут термос из исходников?
При попытке сбилдить выбивает следующее
Java:
FAILURE: Build failed with an exception.

* Where:
Build file 'C:\modding 1.7.10\Thermos-master\Thermos\build.gradle' line: 192

* What went wrong:
A problem occurred evaluating root project 'Thermos'.
[QUOTE] Could not resolve all dependencies for configuration ':libraries'.[/QUOTE]
[QUOTE] Could not find net.minecraft:server:1.7.10.[/QUOTE]
     Searched in the following locations:
         http://oss.sonatype.org/content/repositories/snapshots/net/minecraft/server/1.7.10/server-1.7.10.pom
         http://oss.sonatype.org/content/repositories/snapshots/net/minecraft/server/1.7.10/server-1.7.10.jar
         http://files.minecraftforge.net/maven/net/minecraft/server/1.7.10/server-1.7.10.pom
         http://files.minecraftforge.net/maven/net/minecraft/server/1.7.10/server-1.7.10.jar
         https://libraries.minecraft.net/net/minecraft/server/1.7.10/server-1.7.10.pom
         https://libraries.minecraft.net/net/minecraft/server/1.7.10/server-1.7.10.jar
         https://hub.spigotmc.org/nexus/content/repositories/snapshots/net/minecraft/server/1.7.10/server-1.7.10.pom
         https://hub.spigotmc.org/nexus/content/repositories/snapshots/net/minecraft/server/1.7.10/server-1.7.10.jar
         https://hub.spigotmc.org/nexus/content/repositories/public/net/minecraft/server/1.7.10/server-1.7.10.pom
         https://hub.spigotmc.org/nexus/content/repositories/public/net/minecraft/server/1.7.10/server-1.7.10.jar
         https://repo1.maven.org/maven2/net/minecraft/server/1.7.10/server-1.7.10.pom
         https://repo1.maven.org/maven2/net/minecraft/server/1.7.10/server-1.7.10.jar
         file:/C:/Users/Serg1K/.m2/repository/net/minecraft/server/1.7.10/server-1.7.10.pom
         file:/C:/Users/Serg1K/.m2/repository/net/minecraft/server/1.7.10/server-1.7.10.jar
     Required by:
         cyberdynecc:Thermos:1.7.10-1614.UNOFFICIAL
[QUOTE] Could not find pw.prok:KImagine:0.2.0.[/QUOTE]
     Searched in the following locations:
         http://oss.sonatype.org/content/repositories/snapshots/pw/prok/KImagine/0.2.0/KImagine-0.2.0.pom
         http://oss.sonatype.org/content/repositories/snapshots/pw/prok/KImagine/0.2.0/KImagine-0.2.0.jar
         http://files.minecraftforge.net/maven/pw/prok/KImagine/0.2.0/KImagine-0.2.0.pom
         http://files.minecraftforge.net/maven/pw/prok/KImagine/0.2.0/KImagine-0.2.0.jar
         https://libraries.minecraft.net/pw/prok/KImagine/0.2.0/KImagine-0.2.0.pom
         https://libraries.minecraft.net/pw/prok/KImagine/0.2.0/KImagine-0.2.0.jar
         https://hub.spigotmc.org/nexus/content/repositories/snapshots/pw/prok/KImagine/0.2.0/KImagine-0.2.0.pom
         https://hub.spigotmc.org/nexus/content/repositories/snapshots/pw/prok/KImagine/0.2.0/KImagine-0.2.0.jar
         https://hub.spigotmc.org/nexus/content/repositories/public/pw/prok/KImagine/0.2.0/KImagine-0.2.0.pom
         https://hub.spigotmc.org/nexus/content/repositories/public/pw/prok/KImagine/0.2.0/KImagine-0.2.0.jar
         https://repo1.maven.org/maven2/pw/prok/KImagine/0.2.0/KImagine-0.2.0.pom
         https://repo1.maven.org/maven2/pw/prok/KImagine/0.2.0/KImagine-0.2.0.jar
         file:/C:/Users/Serg1K/.m2/repository/pw/prok/KImagine/0.2.0/KImagine-0.2.0.pom
         file:/C:/Users/Serg1K/.m2/repository/pw/prok/KImagine/0.2.0/KImagine-0.2.0.jar
     Required by:
         cyberdynecc:Thermos:1.7.10-1614.UNOFFICIAL
Да, знаю, репозитории уже давно подохли, но все необходимые библиотеки есть и лежат в папке libraries(В том числе и KImagine-0.2.0.jar, server-1.7.10.jar(На них ругается))

На всякий build.gradle
Java:
import groovy.json.JsonSlurper
import thermos.CreateChangelog
import thermos.InstallBundle
import thermos.VersionParser

buildscript {
    repositories {
        /*maven {
            name 'prok'
            url 'https://repo.prok.pw/'
        }*/
        maven {
            name 'forge'
            url 'http://files.minecraftforge.net/maven'
        }
        maven {
            name 'sonatype'
            url 'http://oss.sonatype.org/content/repositories/snapshots/'
        }
        maven {
            name 'spigot'
            url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
        }
        maven {
            name 'spigot-public'
            url 'https://hub.spigotmc.org/nexus/content/repositories/public/'
        }

        mavenCentral()
        mavenLocal()
    }
    dependencies {
//        classpath files('FGS.jar')
        classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
    }
}

tasks.whenTaskAdded {
    if (it.name.startsWith('publish')) it.dependsOn 'preparePublication'
}

apply plugin: 'maven'
apply plugin: 'cauldron'
apply plugin: 'maven-publish'
apply plugin: 'signing'

repositories {
    clear()
    maven {
        name 'sonatype'
        url 'http://oss.sonatype.org/content/repositories/snapshots/'
    }
    /*maven {
        name 'prok'
        url 'https://repo.prok.pw/'
    }*/
    maven {
        name 'forge'
        url 'http://files.minecraftforge.net/maven'
    }
    maven {
        name 'minecraft'
        url 'https://libraries.minecraft.net/'
    }
    maven {
        name 'spigot'
        url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
    }
    maven {
        name 'spigot-public'
        url 'https://hub.spigotmc.org/nexus/content/repositories/public/'
    }

    mavenCentral()
    mavenLocal()
}

minecraft {
    version = '1.7.10'
    mcpVersion = '9.05'
    mainClass = 'cpw.mods.fml.relauncher.ServerLaunchWrapper'
    tweakClass = 'cpw.mods.fml.common.launcher.FMLTweaker'
    installerVersion = "1.4"
    srgExtra "PK: org/bukkit/craftbukkit org/bukkit/craftbukkit/v1_7_R4"
}

group = 'cyberdynecc'

ext.buildInfoCached = null;

def buildInfo(String key) {
    if (!buildInfoCached) {
        if (project.hasProperty('officialBuild')) {
            buildInfoCached = new JsonSlurper().parse(new URL("http://i.yive.pw/thermos/version"))
        } else {
            buildInfoCached = [
                    nextBuildNumber: 'UNOFFICIAL',
                    version        : 'NONE'
            ]
        }
    }
    return key ? buildInfoCached[key] : buildInfoCached;
}

ext.gitInfoCached = null;

def gitInfo(String key) {
    if (!gitInfoCached) {
        if (file('.git').exists()) {
            gitInfoCached = [
                    hash    : ['git', 'log', "--format=%h", '-n', '1'].execute().text.trim(),
                    fullHash: ['git', 'log', "--format=%H", '-n', '1'].execute().text.trim(),
                    branch  : System.getenv("CI_BUILD_REF_NAME") ?: ['git', 'symbolic-ref', '--short', 'HEAD'].execute().text.trim(),
                    message : ['git', 'log', "--format=%B", '-n', '1'].execute().text.trim()
            ]
        } else {
            gitInfoCached = [
                    hash    : 'NOT_A_GIT',
                    fullHash: 'NOT_A_GIT',
                    branch  : 'NOT_A_GIT',
                    message : 'NOT_A_GIT'
            ]
        }
    }
    return key ? gitInfoCached[key] : gitInfoCached;
}

ext.mcVersion = "1.7.10"
ext.forgeVersion = VersionParser.parseForgeRevision(file('src/main/resources/fmlversion.properties'))
ext.revision = project.hasProperty('revision') ? project.getProperty('revision') : buildInfo('nextBuildNumber')
version = "${mcVersion}-${forgeVersion}.${revision}"
if (project.hasProperty('officialBuild')) println "Updated Thermos version: ${version}"

launch4j {
    jreMinVersion = '1.7.0'
}

configurations {
    compile.extendsFrom exported
    libraries
    bootstrap
}

dependencies {
    bootstrap 'pw.prok:KBootstrap:0.2.+'
    libraries 'net.minecraft:launchwrapper:1.12@jar'
    libraries 'org.ow2.asm:asm-all:5.0.3'
    libraries 'com.typesafe.akka:akka-actor_2.11:2.3.3'
    libraries 'com.typesafe:config:1.2.1'
    libraries 'org.scala-lang:scala-actors-migration_2.11:1.1.0'
    libraries 'org.scala-lang:scala-compiler:2.11.7'
    libraries 'org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2'
    libraries 'org.scala-lang.plugins:scala-continuations-plugin_2.11.2:1.0.2'
    libraries 'org.scala-lang:scala-library:2.11.7'
    libraries 'org.scala-lang:scala-parser-combinators:2.11.0-M4'
    libraries 'org.scala-lang:scala-reflect:2.11.7'
    libraries 'org.scala-lang:scala-swing:2.11.0-M7'
    libraries 'org.scala-lang:scala-xml:2.11.0-M4'
    libraries 'net.sf.jopt-simple:jopt-simple:5.0.1'
    libraries 'lzma:lzma:0.0.1'
    libraries 'org.yaml:snakeyaml:1.9'
    libraries 'commons-lang:commons-lang:2.6'
    libraries 'org.avaje:ebean:2.7.3'
    libraries 'jline:jline:2.6'
    libraries 'net.md-5:SpecialSource:1.7-SNAPSHOT'
    libraries 'net.sourceforge.argo:argo:2.25'
    libraries 'com.googlecode.json-simple:json-simple:1.1'
    libraries 'org.xerial:sqlite-jdbc:3.7.2'
    libraries 'mysql:mysql-connector-java:5.1.14'
    libraries 'javax.persistence:persistence-api:1.0.2'
    libraries 'net.minecraft:server:1.7.10'
    libraries 'pw.prok:KImagine:0.2.0@jar'
    libraries 'org.apache.httpcomponents:httpclient:4.4.1'
    libraries 'net.openhft:affinity:3.0.1'
    libraries 'org.fusesource.jansi:jansi:1.11'
    libraries 'com.koloboke:koloboke-impl-jdk8:1.0.0'
    libraries 'java3d:vecmath:1.3.1'
}

packageUniversal {
    from { configurations.exported.collect { it.isDirectory() ? it : zipTree(it) } }
}

def String repeat(String string, int times) {
    StringBuilder builder = new StringBuilder(string.length() * times)
    times.times { builder.append(string) }
    builder as String
}

def generateClasspath(boolean legacy = false) {
    def classpath = ''
    configurations.libraries.resolvedConfiguration.resolvedArtifacts.collect { it.moduleVersion.id }.each {
        def jar = "${it.group.replace('.', '/')}/${it.name}/${it.version}/${it.name}-${it.version}.jar"
        classpath += " ${legacy ? 'libraries/' : repeat('../', (group as String).split('\\.').length + 2)}${jar}"
    }
    return classpath.trim()
}

def generateManifest(boolean legacy = false) {
    [
            'Thermos-Git-Branch'    : gitInfo('branch'),
            'Thermos-Git-Hash'      : gitInfo('fullHash'),
            'Thermos-Group'         : project.group,
            'Thermos-Channel'       : project.name,
            'Thermos-Version'       : project.version,
            'Thermos-Legacy'        : legacy,
            'Implementation-Vendor' : 'CyberdyneCC',
            'Implementation-Title'  : project.name,
            'Implementation-Version': project.version,
            'Specification-Vendor'  : 'Bukkit Team',
            'Specification-Title'   : 'Bukkit',
            'Specification-Version' : '1.7.10-R0.1-SNAPSHOT',
            'Forge-Version'         : VersionParser.parseForgeVersion(file('forge/src/main/java/net/minecraftforge/common/ForgeVersion.java'), file('src/main/resources/fmlversion.properties')),
            'TweakClass'            : 'cpw.mods.fml.common.launcher.FMLTweaker',
            'Main-Class'            : 'cpw.mods.fml.relauncher.ServerLaunchWrapper',
            'Class-Path'            : generateClasspath(legacy)
    ]
}

tasks.packageUniversal {
    classifier = 'server'
    setManifest {}
    manifest.attributes(generateManifest(true))
}

task jar(type: Jar, dependsOn: packageUniversal) {
    destinationDir file("${buildDir}/distributions")
    from zipTree(tasks.packageUniversal.archivePath)
    manifest.attributes(generateManifest())
}

tasks.createChangelog.onlyIf { false }
tasks.packageInstaller.onlyIf { false }

task packageChangelog(type: CreateChangelog) {
    onlyIf { project.hasProperty('officialBuild') }
    classifier = 'changelog'
    extension = 'txt'
    oldChangelogUrl = "https://i.tcpr.ca/thermos/changelog.txt"
    hash = gitInfo('hash')
    message = gitInfo('message')
    version = project.version
}

task bundleStub(type: Jar) {
    classifier = 'stub'
    manifest.attributes([
            'Main-Class': 'cpw.mods.fml.relauncher.ServerLaunchWrapper',
            'Class-Path': "bin/${project.group.replace('.', '/')}/${project.name}/${project.version}/${project.name}-${project.version}.jar"
    ])
}

task installBundle(type: InstallBundle, dependsOn: jar) {
    serverJar tasks.jar.archivePath
    bootstrapClasspath configurations.bootstrap
    bootstrapMain 'pw.prok.bootstrap.Main'
}

task packageBundle(type: Zip, dependsOn: installBundle) {
    classifier = 'bundle'
    from fileTree(installBundle.installLocation)
    from bundleStub
    rename bundleStub.archiveName, 'Thermos.jar'
}

task signJars(type: Sign, dependsOn: [packageUniversal, packageChangelog, packageBundle, jar, 'generatePomFileForMavenPublication']) {
    sign packageUniversal
    sign packageChangelog
    sign packageBundle
    sign jar
}

task signPom(type: Sign, dependsOn: 'generatePomFileForMavenPublication') {
    outputs.upToDateWhen { false }
    sign file("${buildDir}/publications/maven/pom-default.xml")
}

task preparePublication(dependsOn: [signJars, signPom]) {}

def getPomSignature = {
    return project.tasks.signPom.signatureFiles.collect { it }[0]
}

def getSignatureFiles = {
    def allFiles = project.tasks.signJars.signatureFiles.collect { it }
    def signedServer = allFiles.find { it.name.contains('-server') }
    def signedChangelog = allFiles.find { it.name.contains('-changelog') }
    def signedBundle = allFiles.find { it.name.contains('-bundle') }
    def signedJar = (allFiles - [signedServer, signedChangelog, signedBundle])[0]
    return [
            [archive: signedServer, classifier: 'server', extension: 'jar.asc'],
            [archive: signedChangelog, classifier: 'changelog', extension: 'txt.asc'],
            [archive: signedBundle, classifier: 'bundle', extension: 'zip.asc'],
            [archive: signedJar, classifier: null, extension: 'jar.asc']
    ]
}

publishing {
    repositories {
        maven {
            name 'ProK'
            url 'https://repo.prok.pw/'
            credentials {
                username project.hasProperty('prokRepoUsername') ? prokRepoUsername : null
                password project.hasProperty('prokRepoPassword') ? prokRepoPassword : null
            }
        }
    }

    publications {
        maven(MavenPublication) {
            getSignatureFiles().each { signature ->
                artifact(signature.archive) {
                    classifier = signature.classifier
                    extension = signature.extension
                }
            }
            artifact(getPomSignature()) {
                classifier = null
                extension = 'pom.asc'
            }
            artifact packageUniversal
            artifact packageChangelog
            artifact packageBundle
            artifact jar
        }
    }
}

tasks.generateProjectCauldron << {
    def file = new File('eclipse/cauldron/build.gradle')
    file.append('''
repositories {
    clear()
    /*maven {
        name 'prok'
        url 'https://repo.prok.pw/'
    }*/
    maven {
        name 'forge'
        url 'http://files.minecraftforge.net/maven'
    }
    maven {
        name 'minecraft'
        url 'https://libraries.minecraft.net/'
    }
    maven {
        name 'spigot-public'
        url 'https://hub.spigotmc.org/nexus/content/repositories/public/'
    }
    mavenCentral()
    mavenLocal()
}
dependencies {
''')
    configurations.libraries.resolvedConfiguration.resolvedArtifacts.collect { it.moduleVersion.id }.each { module ->
        if (['net.minecraft:server:', 'org.ow2.asm:asm-all'].findAll { (module as String).startsWith it }.size() > 0) {
            return
        }
        file.append("    compile '${module}'\n")
    }
    file.append('}')
}

task resolveAllDependencies {
    doLast {
        configurations.each { it.resolve() }
    }
}
 

Icosider

Kotliner
Администратор
3,601
99
664
Создаёшь папку lib в проекте своём, кидаешь в неё бинарники которые нужны и затем в build.gradle прописываешь их как зависимости.
flatDir { dirs 'lib' }
compile name: 'depName-1.7.10' (без .jar)
 
Хм, спасибо, ошибка пропала, но появились новые проблемсы =(
После того. как все необходимые библиотеки подключил, запустил таск setupCauldron, все прошло хорошо. Пытаюсь все сбилдить, появляется следующая ошибка(как будто не установлен workspace, но тасков на его установку я не нашел. Да и классы в идеи выглядят не так, как должны)
новая ошибка:
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\world\World.java:78: error: package net.openhft.affinity does not exist
import net.openhft.affinity.AffinityLock;
                           ^
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\server\MinecraftServer.java:89: error: package net.openhft.affinity does not exist
import net.openhft.affinity.AffinityLock;
                           ^
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\wrapper\ChunkBlockHashMap.java:5: error: package com.koloboke.collect.map does not exist
import com.koloboke.collect.map.LongObjMap;
                               ^
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\wrapper\ChunkBlockHashMap.java:6: error: package com.koloboke.collect.map.hash does not exist
import com.koloboke.collect.map.hash.HashLongObjMaps;
                                    ^
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\wrapper\ChunkBlockHashMap.java:12: error: cannot find symbol
    private final LongObjMap<Chunk[][]> map = HashLongObjMaps.newMutableMap(1000);
                  ^
  symbol:   class LongObjMap
  location: class ChunkBlockHashMap
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\wrapper\ChunkBlockHashMap.java:41: error: cannot find symbol
    public LongObjMap<Chunk[][]> raw()
           ^
  symbol:   class LongObjMap
  location: class ChunkBlockHashMap
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\ThermosClassTransformer.java:13: error: package pw.prok.imagine.asm does not exist
import pw.prok.imagine.asm.ImagineASM;
                          ^
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\ThermosClassTransformer.java:14: error: package pw.prok.imagine.asm does not exist
import pw.prok.imagine.asm.Transformer;
                          ^
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\ThermosClassTransformer.java:18: error: cannot find symbol
public class ThermosClassTransformer implements Transformer {
                                                ^
  symbol: class Transformer
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\ThermosClassTransformer.java:17: error: package Transformer does not exist
@Transformer.RegisterTransformer
            ^
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\ThermosClassTransformer.java:20: error: cannot find symbol
    public void transform(final ImagineASM asm) {
                                ^
  symbol:   class ImagineASM
  location: class ThermosClassTransformer
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\ThermosClassTransformer.java:36: error: cannot find symbol
    public void extractFrom(ImagineASM asm, InsnList list) {
                            ^
  symbol:   class ImagineASM
  location: class ThermosClassTransformer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\server\MinecraftServer.java:655: error: cannot find symbol
                AffinityLock al = null;
                ^
  symbol:   class AffinityLock
  location: class MinecraftServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\server\MinecraftServer.java:658: error: cannot find symbol
                    al = AffinityLock.acquireCore();
                         ^
  symbol:   variable AffinityLock
  location: class MinecraftServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\server\MinecraftServer.java:660: error: cannot find symbol
                        logger.log(org.apache.logging.log4j.Level.INFO, "[Thermos] We're locked in! " + AffinityLock.dumpLocks());
                                                                                                        ^
  symbol:   variable AffinityLock
  location: class MinecraftServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2439: error: cannot find symbol
                itemstack = packetbuffer.readItemStackFromBuffer();
                ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2441: error: cannot find symbol
                if (itemstack != null)
                    ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2443: error: cannot find symbol
                    if (!ItemWritableBook.func_150930_a(itemstack.getTagCompound()))
                                                        ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2448: error: cannot find symbol
                    itemstack1 = this.playerEntity.inventory.getCurrentItem();
                    ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2450: error: cannot find symbol
                    if (itemstack1 == null)
                        ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2455: error: cannot find symbol
                    if (itemstack.getItem() == Items.writable_book && itemstack.getItem() == itemstack1.getItem())
                        ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2455: error: cannot find symbol
                    if (itemstack.getItem() == Items.writable_book && itemstack.getItem() == itemstack1.getItem())
                                                                      ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2455: error: cannot find symbol
                    if (itemstack.getItem() == Items.writable_book && itemstack.getItem() == itemstack1.getItem())
                                                                                             ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2457: error: cannot find symbol
                        itemstack1.setTagInfo("pages", itemstack.getTagCompound().getTagList("pages", 8));
                                                       ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2457: error: cannot find symbol
                        itemstack1.setTagInfo("pages", itemstack.getTagCompound().getTagList("pages", 8));
                        ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2481: error: cannot find symbol
                itemstack = packetbuffer.readItemStackFromBuffer();
                ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2483: error: cannot find symbol
                if (itemstack == null)
                    ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2488: error: cannot find symbol
                if (!ItemEditableBook.validBookTagContents(itemstack.getTagCompound()))
                                                           ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2493: error: cannot find symbol
                itemstack1 = this.playerEntity.inventory.getCurrentItem();
                ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2495: error: cannot find symbol
                if (itemstack1 != null)
                    ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2497: error: cannot find symbol
                    if (itemstack.getItem() == Items.written_book && itemstack1.getItem() == Items.writable_book)
                        ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2497: error: cannot find symbol
                    if (itemstack.getItem() == Items.written_book && itemstack1.getItem() == Items.writable_book)
                                                                     ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2499: error: cannot find symbol
                        itemstack1.setTagInfo("author", new NBTTagString(this.playerEntity.getCommandSenderName()));
                        ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2500: error: cannot find symbol
                        itemstack1.setTagInfo("title", new NBTTagString(itemstack.getTagCompound().getString("title")));
                                                                        ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2500: error: cannot find symbol
                        itemstack1.setTagInfo("title", new NBTTagString(itemstack.getTagCompound().getString("title")));
                        ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2501: error: cannot find symbol
                        itemstack1.setTagInfo("pages", itemstack.getTagCompound().getTagList("pages", 8));
                                                       ^
  symbol:   variable itemstack
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2501: error: cannot find symbol
                        itemstack1.setTagInfo("pages", itemstack.getTagCompound().getTagList("pages", 8));
                        ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\eclipse\Cauldron\src\main\java\net\minecraft\network\NetHandlerPlayServer.java:2502: error: cannot find symbol
                        itemstack1.func_150996_a(Items.written_book);
                        ^
  symbol:   variable itemstack1
  location: class NetHandlerPlayServer
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\wrapper\ChunkBlockHashMap.java:12: error: cannot find symbol
    private final LongObjMap<Chunk[][]> map = HashLongObjMaps.newMutableMap(1000);
                                              ^
  symbol:   variable HashLongObjMaps
  location: class ChunkBlockHashMap
C:\modding 1.7.10\Thermos-master\Thermos\src\main\java\thermos\ThermosClassTransformer.java:19: error: method does not override or implement a method from a supertype
    @Override


Безымянный.png

На всякий случай прикреплю переделанный build.gradle
build.gradle:
import groovy.json.JsonSlurper
import thermos.CreateChangelog
import thermos.InstallBundle
import thermos.VersionParser

buildscript {
    repositories {
        /*maven {
            name 'prok'
            url 'https://repo.prok.pw/'
        }*/
        maven {
            name 'forge'
            url 'http://files.minecraftforge.net/maven'
        }
        maven {
            name 'sonatype'
            url 'http://oss.sonatype.org/content/repositories/snapshots/'
        }
        maven {
            name 'spigot'
            url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
        }
        maven {
            name 'spigot-public'
            url 'https://hub.spigotmc.org/nexus/content/repositories/public/'
        }

        mavenCentral()
        mavenLocal()
    }
    dependencies {
//        classpath files('FGS.jar')
        classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
    }
}

tasks.whenTaskAdded {
    if (it.name.startsWith('publish')) it.dependsOn 'preparePublication'
}

apply plugin: 'maven'
apply plugin: 'cauldron'
apply plugin: 'maven-publish'
apply plugin: 'signing'

repositories {
    clear()
    maven {
        name 'sonatype'
        url 'http://oss.sonatype.org/content/repositories/snapshots/'
    }
    /*maven {
        name 'prok'
        url 'https://repo.prok.pw/'
    }*/
    maven {
        name 'forge'
        url 'http://files.minecraftforge.net/maven'
    }
    maven {
        name 'minecraft'
        url 'https://libraries.minecraft.net/'
    }
    maven {
        name 'spigot'
        url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
    }
    maven {
        name 'spigot-public'
        url 'https://hub.spigotmc.org/nexus/content/repositories/public/'
    }

    mavenCentral()
    mavenLocal()
}

minecraft {
    version = '1.7.10'
    mcpVersion = '9.05'
    mainClass = 'cpw.mods.fml.relauncher.ServerLaunchWrapper'
    tweakClass = 'cpw.mods.fml.common.launcher.FMLTweaker'
    installerVersion = "1.4"
    srgExtra "PK: org/bukkit/craftbukkit org/bukkit/craftbukkit/v1_7_R4"
}

group = 'cyberdynecc'

ext.buildInfoCached = null;

def buildInfo(String key) {
    if (!buildInfoCached) {
        if (project.hasProperty('officialBuild')) {
            buildInfoCached = new JsonSlurper().parse(new URL("http://i.yive.pw/thermos/version"))
        } else {
            buildInfoCached = [
                    nextBuildNumber: 'UNOFFICIAL',
                    version        : 'NONE'
            ]
        }
    }
    return key ? buildInfoCached[key] : buildInfoCached;
}

ext.gitInfoCached = null;

def gitInfo(String key) {
    if (!gitInfoCached) {
        if (file('.git').exists()) {
            gitInfoCached = [
                    hash    : ['git', 'log', "--format=%h", '-n', '1'].execute().text.trim(),
                    fullHash: ['git', 'log', "--format=%H", '-n', '1'].execute().text.trim(),
                    branch  : System.getenv("CI_BUILD_REF_NAME") ?: ['git', 'symbolic-ref', '--short', 'HEAD'].execute().text.trim(),
                    message : ['git', 'log', "--format=%B", '-n', '1'].execute().text.trim()
            ]
        } else {
            gitInfoCached = [
                    hash    : 'NOT_A_GIT',
                    fullHash: 'NOT_A_GIT',
                    branch  : 'NOT_A_GIT',
                    message : 'NOT_A_GIT'
            ]
        }
    }
    return key ? gitInfoCached[key] : gitInfoCached;
}

ext.mcVersion = "1.7.10"
ext.forgeVersion = VersionParser.parseForgeRevision(file('src/main/resources/fmlversion.properties'))
ext.revision = project.hasProperty('revision') ? project.getProperty('revision') : buildInfo('nextBuildNumber')
version = "${mcVersion}-${forgeVersion}.${revision}"
if (project.hasProperty('officialBuild')) println "Updated Thermos version: ${version}"

launch4j {
    jreMinVersion = '1.7.0'
}

configurations {
    compile.extendsFrom exported
    libraries
    bootstrap
}

repositories {
    flatDir {
        dirs 'lib'
    }
}

dependencies {
    bootstrap 'pw.prok:KBootstrap:0.2.+'
    compile fileTree(dir: 'lib', includes: ['*.jar'])
    /*libraries 'net.minecraft:launchwrapper:1.12@jar'
    libraries 'org.ow2.asm:asm-all:5.0.3'
    libraries 'com.typesafe.akka:akka-actor_2.11:2.3.3'
    libraries 'com.typesafe:config:1.2.1'
    libraries 'org.scala-lang:scala-actors-migration_2.11:1.1.0'
    libraries 'org.scala-lang:scala-compiler:2.11.7'
    libraries 'org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2'
    libraries 'org.scala-lang.plugins:scala-continuations-plugin_2.11.2:1.0.2'
    libraries 'org.scala-lang:scala-library:2.11.7'
    libraries 'org.scala-lang:scala-parser-combinators:2.11.0-M4'
    libraries 'org.scala-lang:scala-reflect:2.11.7'
    libraries 'org.scala-lang:scala-swing:2.11.0-M7'
    libraries 'org.scala-lang:scala-xml:2.11.0-M4'
    libraries 'net.sf.jopt-simple:jopt-simple:5.0.1'
    libraries 'lzma:lzma:0.0.1'
    libraries 'org.yaml:snakeyaml:1.9'
    libraries 'commons-lang:commons-lang:2.6'
    libraries 'org.avaje:ebean:2.7.3'
    libraries 'jline:jline:2.6'
    libraries 'net.md-5:SpecialSource:1.7-SNAPSHOT'
    libraries 'net.sourceforge.argo:argo:2.25'
    libraries 'com.googlecode.json-simple:json-simple:1.1'
    libraries 'org.xerial:sqlite-jdbc:3.7.2'
    libraries 'mysql:mysql-connector-java:5.1.14'
    libraries 'javax.persistence:persistence-api:1.0.2'
    libraries 'net.minecraft:server:1.7.10'
    libraries 'pw.prok:KImagine:0.2.0@jar'
    libraries 'org.apache.httpcomponents:httpclient:4.4.1'
    libraries 'net.openhft:affinity:3.0.1'
    libraries 'org.fusesource.jansi:jansi:1.11'
    libraries 'com.koloboke:koloboke-impl-jdk8:1.0.0'
    libraries 'java3d:vecmath:1.3.1' */
}

packageUniversal {
    from { configurations.exported.collect { it.isDirectory() ? it : zipTree(it) } }
}

def String repeat(String string, int times) {
    StringBuilder builder = new StringBuilder(string.length() * times)
    times.times { builder.append(string) }
    builder as String
}

def generateClasspath(boolean legacy = false) {
    def classpath = ''
    configurations.libraries.resolvedConfiguration.resolvedArtifacts.collect { it.moduleVersion.id }.each {
        def jar = "${it.group.replace('.', '/')}/${it.name}/${it.version}/${it.name}-${it.version}.jar"
        classpath += " ${legacy ? 'libraries/' : repeat('../', (group as String).split('\\.').length + 2)}${jar}"
    }
    return classpath.trim()
}

def generateManifest(boolean legacy = false) {
    [
            'Thermos-Git-Branch'    : gitInfo('branch'),
            'Thermos-Git-Hash'      : gitInfo('fullHash'),
            'Thermos-Group'         : project.group,
            'Thermos-Channel'       : project.name,
            'Thermos-Version'       : project.version,
            'Thermos-Legacy'        : legacy,
            'Implementation-Vendor' : 'CyberdyneCC',
            'Implementation-Title'  : project.name,
            'Implementation-Version': project.version,
            'Specification-Vendor'  : 'Bukkit Team',
            'Specification-Title'   : 'Bukkit',
            'Specification-Version' : '1.7.10-R0.1-SNAPSHOT',
            'Forge-Version'         : VersionParser.parseForgeVersion(file('forge/src/main/java/net/minecraftforge/common/ForgeVersion.java'), file('src/main/resources/fmlversion.properties')),
            'TweakClass'            : 'cpw.mods.fml.common.launcher.FMLTweaker',
            'Main-Class'            : 'cpw.mods.fml.relauncher.ServerLaunchWrapper',
            'Class-Path'            : generateClasspath(legacy)
    ]
}

tasks.packageUniversal {
    classifier = 'server'
    setManifest {}
    manifest.attributes(generateManifest(true))
}

task jar(type: Jar, dependsOn: packageUniversal) {
    destinationDir file("${buildDir}/distributions")
    from zipTree(tasks.packageUniversal.archivePath)
    manifest.attributes(generateManifest())
}

tasks.createChangelog.onlyIf { false }
tasks.packageInstaller.onlyIf { false }

task packageChangelog(type: CreateChangelog) {
    onlyIf { project.hasProperty('officialBuild') }
    classifier = 'changelog'
    extension = 'txt'
    oldChangelogUrl = "https://i.tcpr.ca/thermos/changelog.txt"
    hash = gitInfo('hash')
    message = gitInfo('message')
    version = project.version
}

task bundleStub(type: Jar) {
    classifier = 'stub'
    manifest.attributes([
            'Main-Class': 'cpw.mods.fml.relauncher.ServerLaunchWrapper',
            'Class-Path': "bin/${project.group.replace('.', '/')}/${project.name}/${project.version}/${project.name}-${project.version}.jar"
    ])
}

task installBundle(type: InstallBundle, dependsOn: jar) {
    serverJar tasks.jar.archivePath
    bootstrapClasspath configurations.bootstrap
    bootstrapMain 'pw.prok.bootstrap.Main'
}

task packageBundle(type: Zip, dependsOn: installBundle) {
    classifier = 'bundle'
    from fileTree(installBundle.installLocation)
    from bundleStub
    rename bundleStub.archiveName, 'Thermos.jar'
}

task signJars(type: Sign, dependsOn: [packageUniversal, packageChangelog, packageBundle, jar, 'generatePomFileForMavenPublication']) {
    sign packageUniversal
    sign packageChangelog
    sign packageBundle
    sign jar
}

task signPom(type: Sign, dependsOn: 'generatePomFileForMavenPublication') {
    outputs.upToDateWhen { false }
    sign file("${buildDir}/publications/maven/pom-default.xml")
}

task preparePublication(dependsOn: [signJars, signPom]) {}

def getPomSignature = {
    return project.tasks.signPom.signatureFiles.collect { it }[0]
}

def getSignatureFiles = {
    def allFiles = project.tasks.signJars.signatureFiles.collect { it }
    def signedServer = allFiles.find { it.name.contains('-server') }
    def signedChangelog = allFiles.find { it.name.contains('-changelog') }
    def signedBundle = allFiles.find { it.name.contains('-bundle') }
    def signedJar = (allFiles - [signedServer, signedChangelog, signedBundle])[0]
    return [
            [archive: signedServer, classifier: 'server', extension: 'jar.asc'],
            [archive: signedChangelog, classifier: 'changelog', extension: 'txt.asc'],
            [archive: signedBundle, classifier: 'bundle', extension: 'zip.asc'],
            [archive: signedJar, classifier: null, extension: 'jar.asc']
    ]
}

publishing {
    repositories {
        maven {
            name 'ProK'
            url 'https://repo.prok.pw/'
            credentials {
                username project.hasProperty('prokRepoUsername') ? prokRepoUsername : null
                password project.hasProperty('prokRepoPassword') ? prokRepoPassword : null
            }
        }
    }

    publications {
        maven(MavenPublication) {
            getSignatureFiles().each { signature ->
                artifact(signature.archive) {
                    classifier = signature.classifier
                    extension = signature.extension
                }
            }
            artifact(getPomSignature()) {
                classifier = null
                extension = 'pom.asc'
            }
            artifact packageUniversal
            artifact packageChangelog
            artifact packageBundle
            artifact jar
        }
    }
}

tasks.generateProjectCauldron << {
    def file = new File('eclipse/cauldron/build.gradle')
    file.append('''
repositories {
    clear()
    /*maven {
        name 'prok'
        url 'https://repo.prok.pw/'
    }*/
    maven {
        name 'forge'
        url 'http://files.minecraftforge.net/maven'
    }
    maven {
        name 'minecraft'
        url 'https://libraries.minecraft.net/'
    }
    maven {
        name 'spigot-public'
        url 'https://hub.spigotmc.org/nexus/content/repositories/public/'
    }
    mavenCentral()
    mavenLocal()
}
dependencies {
''')
    configurations.libraries.resolvedConfiguration.resolvedArtifacts.collect { it.moduleVersion.id }.each { module ->
        if (['net.minecraft:server:', 'org.ow2.asm:asm-all'].findAll { (module as String).startsWith it }.size() > 0) {
            return
        }
        file.append("    compile '${module}'\n")
    }
    file.append('}')
}

task resolveAllDependencies {
    doLast {
        configurations.each { it.resolve() }
    }
}
 
Сверху