akhikhl / wuff

Gradle plugin for automating assembly of OSGi/Eclipse bundles and applications
MIT License
152 stars 51 forks source link

Failed to get resource #51

Open rdtorres opened 9 years ago

rdtorres commented 9 years ago

Hi,

Every time that I build or clean my application, I see a lot of "Failed to get resource" messages in the build log. My application is working fine, so far. But any idea how to solve it or should I ignore it?

Sample log: Failed to get resource: HEAD. [HTTP HTTP/1.1 409 Conflict: http://oss.jfrog.org/artifactory/oss-snapshot-local/org/akhikhl/gradle-onejar/gradle-onejar/0.0.11/gradle-onejar-0.0.11.pom] Failed to get resource: HEAD. [HTTP HTTP/1.1 409 Conflict: http://oss.jfrog.org/artifactory/oss-snapshot-local/commons-io/commons-io/2.4/commons-io-2.4.pom]

The reason behind the log is because the artifact does not exists in the repository. Is it expected ?

Number of fails: $ ./gradlew build --info | grep "Conflict:" | wc -l 137

mcmil commented 9 years ago

Hello,

It looks like you don't have the jcenter() repository declared in your script. Could you post the contents of your build.gradle?

It should contain both snapshot-local and jcenter(). Something like this:

buildscript {
  repositories {
    jcenter()
    maven { url 'http://oss.jfrog.org/artifactory/oss-snapshot-local' }
  }

  dependencies {
    classpath 'org.akhikhl.wuff:wuff-plugin:0.0.13-SNAPSHOT'
  }
}

repositories {
  jcenter()
  maven { url 'http://oss.jfrog.org/artifactory/oss-snapshot-local' }
}

I was able to get the same errors by removing jcenter() from the script above.

rdtorres commented 9 years ago

I do have Jcenter in my repositories list. This is my build.gradle

buildscript {
  repositories {
    jcenter()
    maven { url 'http://oss.jfrog.org/artifactory/oss-snapshot-local' }
  }

  dependencies {
    classpath 'org.akhikhl.wuff:wuff-plugin:0.0.13-SNAPSHOT'
  }
}

repositories {
  jcenter()
  maven { url 'http://oss.jfrog.org/artifactory/oss-snapshot-local' }
}

apply plugin: 'java'
apply plugin: 'org.akhikhl.wuff.eclipse-rcp-app'

products {
  product platform: 'linux', arch: 'x86_32'
  product platform: 'linux', arch: 'x86_64'
  product platform: 'windows', arch: 'x86_32'
  product platform: 'windows', arch: 'x86_64'
  product platform: 'macosx', arch: 'x86_64'
//  archiveProducts = true
}

run {
    if (project.hasProperty('s') && project.hasProperty('cp') ) {
        args = [
                "-s", project.s,
                "-cp", project.cp
        ]
    }
}

dependencies {
  runtime "${eclipseMavenGroup}:org.eclipse.equinox.p2.repository:+"
  runtime "${eclipseMavenGroup}:org.eclipse.equinox.p2.metadata.repository:+"                                                                                                                            
}
rdtorres commented 9 years ago

based on mcmill input. I realized that this issue was caused by repository order. Gradle is looking for resources in jcenter and jfrog before going to local maven repository. I've added mavenLocal() as my first repository and the issues are gone now.

my build.gradle:

buildscript {
  repositories {
    mavenLocal()
    jcenter()
    maven { url 'http://oss.jfrog.org/artifactory/oss-snapshot-local' }
  }

  dependencies {
    classpath 'org.akhikhl.wuff:wuff-plugin:0.0.13-SNAPSHOT'
  }
}

repositories {
  mavenLocal()
  jcenter()
  maven { url 'http://oss.jfrog.org/artifactory/oss-snapshot-local' }
}

apply plugin: 'java'
apply plugin: 'org.akhikhl.wuff.eclipse-rcp-app'

products {
  product platform: 'linux', arch: 'x86_32'
  product platform: 'linux', arch: 'x86_64'
  product platform: 'windows', arch: 'x86_32'
  product platform: 'windows', arch: 'x86_64'
  product platform: 'macosx', arch: 'x86_64'
//  archiveProducts = true
}

run {
    if (project.hasProperty('s') && project.hasProperty('cp') ) {
        args = [
                "-s", project.s,
                "-cp", project.cp
        ]
    }
}

dependencies {
  runtime "${eclipseMavenGroup}:org.eclipse.equinox.p2.repository:+"
  runtime "${eclipseMavenGroup}:org.eclipse.equinox.p2.metadata.repository:+"                                                                                                                            
}