Skip to content

Commit a69e1ac

Browse files
authored
Improve search from maven local repository (#452)
1 parent 2abfe06 commit a69e1ac

File tree

3 files changed

+15
-6
lines changed

3 files changed

+15
-6
lines changed

shared/src/main/kotlin/org/javacs/kt/classpath/BackupClassPathResolver.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ private fun Path.existsOrNull() =
8080
if (Files.exists(this)) this else null
8181

8282
private fun findLocalArtifactDirUsingMaven(group: String, artifact: String) =
83-
LocalArtifactDirectoryResolution(mavenHome.resolve("repository")
83+
LocalArtifactDirectoryResolution(mavenRepository
8484
?.resolve(group.replace('.', File.separatorChar))
8585
?.resolve(artifact)
8686
?.existsOrNull(), "Maven")
@@ -118,4 +118,3 @@ private fun compareVersions(left: Path, right: Path): Int {
118118
private fun extractVersion(artifactVersionDir: Path): List<String> {
119119
return artifactVersionDir.toString().split(".")
120120
}
121-

shared/src/main/kotlin/org/javacs/kt/classpath/Home.kt

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,16 @@ package org.javacs.kt.classpath
33
import org.javacs.kt.util.userHome
44
import java.nio.file.Paths
55

6-
internal val gradleHome = System.getenv("GRADLE_USER_HOME")?.let { Paths.get(it) } ?: userHome.resolve(".gradle")
7-
// TODO: try and figure out if mavenHome is in non-default position (requires finding and parsing settings.xml)
8-
internal val mavenHome = userHome.resolve(".m2")
6+
7+
internal val gradleHome =
8+
System.getenv("GRADLE_USER_HOME")?.let { Paths.get(it) }
9+
?: userHome.resolve(".gradle")
10+
11+
internal val mavenHome =
12+
System.getenv("MAVEN_HOME")?.let { Paths.get(it) }
13+
?: System.getenv("M2_HOME")?.let { Paths.get(it) }
14+
?: userHome.resolve(".m2")
15+
16+
internal val mavenRepository =
17+
System.getenv("MAVEN_REPOSITORY")?.let { Paths.get(it) }
18+
?: mavenHome.resolve("repository")

shared/src/main/kotlin/org/javacs/kt/classpath/MavenClassPathResolver.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ private fun readMavenDependencyListWithSources(artifacts: Set<Artifact>, sources
8484
}
8585

8686
private fun findMavenArtifact(a: Artifact, source: Boolean): Path? {
87-
val result = mavenHome.resolve("repository")
87+
val result = mavenRepository
8888
.resolve(a.group.replace('.', File.separatorChar))
8989
.resolve(a.artifact)
9090
.resolve(a.version)

0 commit comments

Comments
 (0)