Search code examples
javagradlekotlinclasspathgradle-kotlin-dsl

Could not find javax.xml.xquery:xqj-api:1.0


The maven repo is added correctly, and is required?

If so, what's the syntax to add xqj?

exception:

thufir@dur:~/NetBeansProjects/helloWorldBaseX$ 
thufir@dur:~/NetBeansProjects/helloWorldBaseX$ gradle clean run
> Task :compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileJava'.
> Could not resolve all files for configuration ':compileClasspath'.
   > Could not find javax.xml.xquery:xqj-api:1.0.
     Searched in the following locations:
       - https://jcenter.bintray.com/javax/xml/xquery/xqj-api/1.0/xqj-api-1.0.pom
       - https://jcenter.bintray.com/javax/xml/xquery/xqj-api/1.0/xqj-api-1.0.jar
       - https://repo.maven.apache.org/maven2/javax/xml/xquery/xqj-api/1.0/xqj-api-1.0.pom
       - https://repo.maven.apache.org/maven2/javax/xml/xquery/xqj-api/1.0/xqj-api-1.0.jar
     Required by:
         project :

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2s
2 actionable tasks: 1 executed, 1 up-to-date
thufir@dur:~/NetBeansProjects/helloWorldBaseX$ 

build file:

/*
 * This file was generated by the Gradle 'init' task.
 *
 * This generated file contains a sample Java project to get you started.
 * For more details take a look at the Java Quickstart chapter in the Gradle
 * user guide available at https://docs.gradle.org/5.0/userguide/tutorial_java_projects.html
 */

plugins {
    // Apply the java plugin to add support for Java
    java

    // Apply the application plugin to add support for building an application
    application
}

repositories {
    // Use jcenter for resolving your dependencies.
    // You can declare any Maven/Ivy/file repository here.
    jcenter()
    mavenCentral()
}

dependencies {
    // This dependency is found on compile classpath of this component and consumers.
    implementation("com.google.guava:guava:26.0-jre")

// https://mvnrepository.com/artifact/org.basex/basex
compile (group= "org.basex", name = "basex" , version = "7.3.1")

compile (group = "javax.xml.xquery" , name = "xqj-api" , version = "1.0")



    // Use TestNG framework, also requires calling test.useTestNG() below
    testImplementation("org.testng:testng:6.14.3")
}

application {
    // Define the main class for the application
    mainClassName = "org.basex.examples.local.App"
}

val test by tasks.getting(Test::class) {
    // Use TestNG for unit tests
    useTestNG()
}

Solution

  • See here : https://mvnrepository.com/artifact/javax.xml.xquery/xqj-api/1.0

    This module is not hosted on Maven central nor JCenter repositories, but it can be found in some other repositories like: https://mvnrepository.com/repos/springio-plugins-release.

    If you want to add dependency to this module, just declare one the available hosting repositories, for example:

    In Groovy DSL:

    repositories {
        jcenter()
        mavenCentral()
        maven{            
            url "http://repo.spring.io/plugins-release/"
        }
    }
    

    EDIT (from comment below)

    Kotlin DSL

    repositories {
        mavenCentral()
        jcenter()
        maven {
            setUrl("http://repo.spring.io/plugins-release/")
        }
    }