在根项目 '' gradle.build 中找不到路径为 '' 的项目

Mig*_*anp 2 gradle

我在使用这个 api 时遇到了一些问题。当前的项目结构应该是

~gregtech
 -Antimatter
  -tesseract
Run Code Online (Sandbox Code Playgroud)

我不知道为什么它一直找不到它。有人可以向我解释一下我做错了什么吗

Build file 'C:\Users\chris\Desktop\Dev\AntimatterAPI\build.gradle' line: 94

A problem occurred evaluating project ':antimatter'.

> Project with path ':tesseract' could not be found in project ':antimatter'.
Run Code Online (Sandbox Code Playgroud)

gregtech 构建.gradle

~gregtech
 -Antimatter
  -tesseract
Run Code Online (Sandbox Code Playgroud)

gregtech 设置.gradle

Build file 'C:\Users\chris\Desktop\Dev\AntimatterAPI\build.gradle' line: 94

A problem occurred evaluating project ':antimatter'.

> Project with path ':tesseract' could not be found in project ':antimatter'.
Run Code Online (Sandbox Code Playgroud)

反物质构建.gradle

buildscript {
    repositories {
        maven { url = 'https://files.minecraftforge.net/maven' }
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true
    }
}

apply plugin: 'java'
apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'eclipse'

version = "${mod_version}"
group = 'muramasa.gti'
archivesBaseName = "${archive_name}"
antimatter_version="0.0.1"

sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8'

sourceSets {
    main {
        java {
            srcDir 'src/main/java'
        }
        resources {
            include '**/**'
            srcDirs += 'src/generated/resources'
            exclude '.cache'
            exclude 'Thumbs.db'
        }
    }
}

minecraft {
    mappings channel: 'snapshot', version: "${mappings_version}"
    // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
    // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
    runs {
        client {
            workingDirectory project.file('run')
            // Recommended logging data for a userdev environment
            // property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
            property 'forge.logging.markers', 'SCAN,REGISTRIES'
            // Recommended logging level for the console
            property 'forge.logging.console.level', 'debug'
            mods {
                gti {
                    source sourceSets.main
                }
            }
        }
        server {
            workingDirectory project.file('run')
            // Recommended logging data for a userdev environment
            property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
            // Recommended logging level for the console
            property 'forge.logging.console.level', 'debug'
            mods {
                gti {
                    source sourceSets.main
                }
            }
        }
        data {
            workingDirectory project.file('run')
            // Recommended logging data for a userdev environment
            property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
            // Recommended logging level for the console
            property 'forge.logging.console.level', 'debug'
            args '--mod', 'gti', '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources')
            mods {
                gti {
                    source sourceSets.main
                }
            }
        }
    }
}

//Force a dependency on a local version of antimatterAPI.
repositories {
    maven {
        url '../AntimatterAPI/build/libs'
    }
}

repositories {
    maven {
        name "JEI"
        url "http://dvs1.progwml6.com/files/maven"
    }
    maven {
        name "JEI Fallback"
        url "https://modmaven.k-4u.nl"
    }
}

dependencies {
    minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
    compile "muramasa.antimatter:antimatter:${antimatter_version}"
    if (local_dev_dependancies.toBoolean()) {
        compile project(":antimatter")
        compileOnly fg.deobf("mezz.jei:jei-${jei_version}:api")
        runtimeOnly fg.deobf("mezz.jei:jei-${jei_version}")
    }
    else {
        compileOnly fg.deobf("mezz.jei:jei-${jei_version}:api")
        runtimeOnly fg.deobf("mezz.jei:jei-${jei_version}")
    }
}

jar {
    zip64 true
}

Run Code Online (Sandbox Code Playgroud)

反物质设置.gradle

include ":antimatter"
project(":antimatter").projectDir = file("../AntimatterAPI")
Run Code Online (Sandbox Code Playgroud)

tesseract 构建.gradle

buildscript {
    repositories {
        maven { url = 'https://files.minecraftforge.net/maven' }
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true
    }
}

apply plugin: 'java'
apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'eclipse'
libsDirName = "libs/muramasa/antimatter/antimatter/${antimatter_version}"

group = 'org.muramasa.gti'
archivesBaseName = 'antimatter'

sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly.

sourceSets {
    main {
        java {
            srcDir 'src/main/java'
        }
        resources {
            include '**/**'
            srcDirs += 'src/generated/resources'
            exclude '.cache'
        }
    }
}

minecraft {
    mappings channel: 'snapshot', version: "${mappings_version}"
    // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
    // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
    runs {
        client {
            workingDirectory project.file('run')
            // Recommended logging data for a userdev environment
            property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
            // Recommended logging level for the console
            property 'forge.logging.console.level', 'debug'
            mods {
                antimatter {
                    source sourceSets.main
                }
            }
        }
        server {
            workingDirectory project.file('run')
            // Recommended logging data for a userdev environment
            property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
            // Recommended logging level for the console
            property 'forge.logging.console.level', 'debug'
            mods {
                antimatter {
                    source sourceSets.main
                }
            }
        }
        data {
            workingDirectory project.file('run')
            // Recommended logging data for a userdev environment
            property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP'
            // Recommended logging level for the console
            property 'forge.logging.console.level', 'debug'
            args '--mod', 'antimatter', '--all', '--output', project.file('src/generated/resources/'), '--existing', sourceSets.main.resources.srcDirs[0]
            mods {
                antimatter {
                    source sourceSets.main
                }
            }
        }
    }
}

repositories {
    maven {
        name 'JEI'
        url 'http://dvs1.progwml6.com/files/maven'
    }
    maven {
        name 'JEI Fallback'
        url 'https://modmaven.k-4u.nl'
    }
}

dependencies {
    minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"

    compile project(':tesseract')

    compileOnly fg.deobf("mezz.jei:jei-${jei_version}:api")
    runtimeOnly fg.deobf("mezz.jei:jei-${jei_version}")
}

def getVersionAppendage() {
    if (System.env.TRAVIS) {
        return System.env.TRAVIS_BUILD_NUMBER
    }

    def proc = 'git rev-parse --short HEAD'.execute()
    proc.waitFor()
    return ''
   // return 'dev-' + proc.exitValue() ? 'unknown' : proc.text.trim()
}

version = antimatter_version// + '.' + getVersionAppendage()

task sourcesJar(type: Jar) {
    classifier 'sources'
    from sourceSets.main.allSource
}

artifacts {
    sourcesJar
}

Run Code Online (Sandbox Code Playgroud)

超正方体设置.gradle

Luk*_*fer 11

在每个 Gradle 多项目构建中,仅settings.gradle评估一个文件。所有相关项目都需要包含在该项目中settings.gradle(通常在根项目的文件夹中)。

在您的情况下,Gradle 可能使用一个settings.gradle未引用丢失项目的文件。

要解决您的问题,请删除除一个settings.gradle文件之外的所有文件,并将您的所有项目包含在其中。dependencies然后在文件块内设置项目依赖项build.gradle

  • 我在编写使用外部 Android 库的电容器插件时遇到了类似的问题。它曾经说在项目“my-plugin”中找不到“sublibrary”。将 ```include ':sublibrary` project(':sublibrary').projectDir = new File('path/to/sublibrary') ``` 添加到主应用程序的 `settings.gradle` 解决了这个问题。 (3认同)