用于分离常春藤和伪影的gradle常春藤解析器

用于分离常春藤和伪影的gradle常春藤解析器,gradle,ivy,Gradle,Ivy,我基本上需要双解析器的功能,但是如果没有gradle,我无法让它以我想要的方式工作,或者以它当时的工作方式工作。我猜gradle不能在这里做我想做的事。在本例中,我希望最新版本由它可以在常春藤的存储库中看到的常春藤定义,该存储库与存储工件的位置分开管理 这可能吗 repositories { ivy { // ivys and artfacts are stored separately ivyPattern "D:/ivys/[organisation]

我基本上需要双解析器的功能,但是如果没有gradle,我无法让它以我想要的方式工作,或者以它当时的工作方式工作。我猜gradle不能在这里做我想做的事。在本例中,我希望最新版本由它可以在常春藤的存储库中看到的常春藤定义,该存储库与存储工件的位置分开管理

这可能吗

repositories {
    ivy {
        // ivys and artfacts are stored separately
        ivyPattern "D:/ivys/[organisation]/[module]/[revision]/[artifact].[ext]"
        artifactPattern "D:/artifacts/[module]/[revision]/[artifact].[ext]"
    }
}

// D:/artifacts/javamail/1.3/mail.jar
// D:/artifacts/javamail/1.4.4/mail.jar
// D:/ivys/toolbox/javamail/1.3/mail.jar

configurations {
    config1
}

dependencies {
    // This configuration fails when there is a newer version of javamail in the artifacts directory
    // but no corresponding ivy in the ivy directory
    config1 "toolbox:javamail:latest.release"

    // This configuration work when I explicitly list the version to resolve
    //config1 "toolbox:javamail:1.3"
}

task build << {
    configurations.config1.each { println it.name }
}

我不知道这能否奏效。但是为什么不解决Maven Central或本地Ivy/Maven实例的问题呢?这个特定的工件存储库是为第三方工件而设计的,属于另一个严格控制的流程/系统,它包含本机库,等等,因此出于几个原因,Maven Central不是一个选项。我们已经能够使用Ant和Ivy解析器和模式映射到它。我们使用产品来源管理常春藤,因为我们不允许将它们添加到工具箱回购中。为什么常春藤会丢失?你不能/不应该解决这个问题吗?确切的错误信息/输出是什么?这个问题似乎是针对最新的.release,应该反映在标题中。*出了什么问题:任务执行失败:生成“”>无法解析配置“:config1”的所有依赖项>无法解析工具箱:javamail:latest.release。::toolbox_t1:unspecified>此模块所需的文件路径尚未解析。日志中的文件路径与生成脚本中配置的文件路径完全不同。您确定日志来自此生成脚本吗?
16:38:22.570 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.DefaultDependencyResolver] Resolving configuration ':config1'
16:38:22.573 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.ivyresolve.memcache.InMemoryCachedRepositoryFactory] Creating new in-memory cache for repo 'ivy' [128cfbcee8fb5f2623bb47a30f078d89].
16:38:22.578 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder] Visiting configuration :toolbox_t1:unspecified(config1).
16:38:22.579 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder] Visiting dependency :toolbox_t1:unspecified(config1) -> toolbox:javamail:latest.release(dependency: toolbox#javamail;latest.release {config1=[default]})
16:38:22.580 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.ivyresolve.RepositoryChainDependencyResolver] Attempting to resolve module 'toolbox:javamail:latest.release' using repositories [ivy]
16:38:22.581 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ResourceVersionLister] Listing all in file:/D:/UDU/r/tc10.1.2.3.2014102000/src/build/ant/toolbox/javamail/[revision]/ivy.xml
16:38:22.582 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ResourceVersionLister] using ivy to list all in file:/D:/UDU/r/tc10.1.2.3.2014102000/src/build/ant/toolbox/javamail/
16:38:22.583 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ResourceVersionLister] found 1 resources
16:38:22.584 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ResourceVersionLister] Listing all in file:/D:/UDU/tb/javamail/[revision]/javamail.jar
16:38:22.585 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ResourceVersionLister] using ivy to list all in file:/D:/UDU/tb/javamail/
16:38:22.587 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ResourceVersionLister] found 2 resources
16:38:22.588 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.DefaultExternalResourceArtifactResolver] Loading file:/D:/UDU/r/tc10.1.2.3.2014102000/src/build/ant/toolbox/javamail/1.4.4/ivy.xml
16:38:22.589 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.DefaultExternalResourceArtifactResolver] Loading file:/D:/UDU/tb/javamail/1.4.4/javamail.jar
16:38:22.591 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ExternalResourceResolver] No meta-data file or artifact found for module 'toolbox:javamail:1.4.4' in repository 'ivy'.
16:38:22.593 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.ResolvedConfigurationDependencyGraphVisitor] Attaching :toolbox_t1:unspecified(config1) to its parents.
16:38:22.597 [DEBUG] [org.gradle.api.internal.artifacts.ivyservice.resolveengine.oldresult.TransientConfigurationResultsBuilder] Flushing resolved configuration data in Binary store in C:\Temp\2\gradle2080536410688129731.bin. Wrote root :toolbox_t1:unspecified:config1.
16:38:22.600 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':build'
16:38:22.601 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :build FAILED