robovm / robovm-gradle-plugin

RoboVM Gradle plugin
45 stars 24 forks source link

Could not find artifact in maven-central #17

Closed AbeJellinek closed 10 years ago

AbeJellinek commented 10 years ago

The example build script in the readme says to use the snapshot version of the plugin along with the RoboVM snapshot, but I get this error when I try to compile a project using the snapshot:

org.gradle.api.GradleException: Could not find artifact org.robovm:robovm-dist:tar.gz:nocompiler:0.0.13-SNAPSHOT in maven-central (http://repo1.maven.org/maven2/)
    at com.github.jtakakura.gradle.tasks.robovm.AbstractRoboVMTask.resolveArtifact(AbstractRoboVMTask.java:269)
    at com.github.jtakakura.gradle.tasks.robovm.AbstractRoboVMTask.unpack(AbstractRoboVMTask.java:217)
    at com.github.jtakakura.gradle.tasks.robovm.AbstractRoboVMTask.build(AbstractRoboVMTask.java:151)
    at com.github.jtakakura.gradle.tasks.robovm.AbstractRoboVMTask.build(AbstractRoboVMTask.java:77)
    at com.github.jtakakura.gradle.tasks.robovm.IOSDeviceTask.invoke(IOSDeviceTask.java:35)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:219)
    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:212)
    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:201)
    at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:533)
    at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:516)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
    ... 49 more
Caused by: org.gradle.mvn3.org.sonatype.aether.resolution.ArtifactResolutionException: Could not find artifact org.robovm:robovm-dist:tar.gz:nocompiler:0.0.13-SNAPSHOT in maven-central (http://repo1.maven.org/maven2/)
    at org.gradle.mvn3.org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:538)
    at org.gradle.mvn3.org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:216)
    at org.gradle.mvn3.org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:193)
    at org.gradle.mvn3.org.sonatype.aether.impl.internal.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:286)
    at com.github.jtakakura.gradle.tasks.robovm.AbstractRoboVMTask.resolveArtifact(AbstractRoboVMTask.java:267)
    ... 61 more
Caused by: org.gradle.mvn3.org.sonatype.aether.transfer.ArtifactNotFoundException: Could not find artifact org.robovm:robovm-dist:tar.gz:nocompiler:0.0.13-SNAPSHOT in maven-central (http://repo1.maven.org/maven2/)
    at org.gradle.mvn3.org.sonatype.aether.connector.wagon.WagonRepositoryConnector$4.wrap(WagonRepositoryConnector.java:947)
    at org.gradle.mvn3.org.sonatype.aether.connector.wagon.WagonRepositoryConnector$4.wrap(WagonRepositoryConnector.java:941)
    at org.gradle.mvn3.org.sonatype.aether.connector.wagon.WagonRepositoryConnector$GetTask.run(WagonRepositoryConnector.java:669)
    at org.gradle.mvn3.org.sonatype.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:60)

It seems to be only looking in Maven Central and not Sonatype Snapshots.

jtakakura commented 10 years ago

Please show your build.gradle.

AbeJellinek commented 10 years ago

Here it is:

apply plugin: 'java'
apply plugin: 'robovm'

sourceCompatibility = '1.7'

configurations { natives }

buildscript {
    repositories {
        mavenCentral()
        mavenLocal()
        maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
    }

    dependencies {
        classpath 'com.github.jtakakura:gradle-robovm-plugin:0.0.9-SNAPSHOT'
    }
}

dependencies {
    compile "org.robovm:robovm-rt:$roboVMVersion"
    compile "org.robovm:robovm-cocoatouch:$roboVMVersion"
    compile project(":gdx-main")
    compile "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion"
    natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
    natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"
}

ext {
    mainClassName = "com.futuristiclights.infinity.ios.IOSStarter"
}

// Extracts native libs (*.a) from the native-ios.jar and places them
// under build/libs/ios/.
task copyNatives << {
    file("build/libs/ios/").mkdirs();
    configurations.natives.files.each { jar ->
        def outputDir = null
        if (jar.name.endsWith("natives-ios.jar")) outputDir = file("build/libs/ios")
        if (outputDir != null) {
            copy {
                from zipTree(jar)
                into outputDir
                include "*.a"
            }
        }
    }
}

// Updates a robovm.xml file.
task updateRoboVMXML << {
    def xml = file('robovm.xml')

    if (!xml.exists()) {
        return
    }

    // Find all native (*.a) libraries beneath libs
    def libtree = fileTree(dir: 'build/libs', include: '**/*.a')

    def config = new groovy.util.XmlParser().parse(xml)
    config.libs.each { libs ->
        libs.children().clear()
        libtree.each { File file ->
            libs.appendNode('lib', 'build/libs/ios/' + file.getName())
        }
        // libs.appendNode('lib', 'libs/ios/libInfinityIOS.a')
    }

    def writer = new FileWriter(xml)
    def printer = new XmlNodePrinter(new PrintWriter(writer))
    printer.setPreserveWhitespace true
    printer.print(config)
}

robovm {
    iosSkipSigning = true
}

updateRoboVMXML.dependsOn copyNatives
build.dependsOn updateRoboVMXML

launchIPhoneSimulator.dependsOn build
launchIPadSimulator.dependsOn build
launchIOSDevice.dependsOn build
createIPA.dependsOn build

roboVMVersion is defined in my main build file:

buildscript {
    repositories {
        mavenCentral()
        maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:0.10.+'
    }
}

allprojects {
    repositories {
        mavenCentral()
        maven {
            url 'https://oss.sonatype.org/content/repositories/snapshots/'
        }
    }

    ext {
        gdxVersion = "1.0.2-SNAPSHOT"
        roboVMVersion = "0.0.13-SNAPSHOT"
    }

    apply plugin: 'idea'
}
jtakakura commented 10 years ago

I Fixed it. Please try again.

AbeJellinek commented 10 years ago

Thank you! Even quicker than I expected.