37 lines
1.9 KiB
Diff
37 lines
1.9 KiB
Diff
|
diff --git a/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java b/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java
|
||
|
index 1e878e5..e96a3b8 100644
|
||
|
--- a/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java
|
||
|
+++ b/tycho-core/src/main/java/org/eclipse/tycho/osgi/runtime/TychoOsgiRuntimeLocator.java
|
||
|
@@ -38,6 +38,7 @@ import org.eclipse.sisu.equinox.embedder.EquinoxRuntimeLocator;
|
||
|
import org.eclipse.tycho.dev.DevWorkspaceResolver;
|
||
|
import org.eclipse.tycho.locking.facade.FileLockService;
|
||
|
import org.eclipse.tycho.locking.facade.FileLocker;
|
||
|
+import org.sonatype.aether.repository.WorkspaceReader;
|
||
|
|
||
|
/**
|
||
|
* Implementation of {@link org.eclipse.sisu.equinox.embedder.EquinoxRuntimeLocator} for Tycho's
|
||
|
@@ -94,6 +95,9 @@ public class TychoOsgiRuntimeLocator implements EquinoxRuntimeLocator {
|
||
|
@Requirement
|
||
|
private DevWorkspaceResolver workspaceState;
|
||
|
|
||
|
+ @Requirement(hint = "ide")
|
||
|
+ private WorkspaceReader workspaceReader;
|
||
|
+
|
||
|
public void locateRuntime(EquinoxRuntimeDescription description) throws MavenExecutionException {
|
||
|
WorkspaceTychoOsgiRuntimeLocator workspaceLocator = WorkspaceTychoOsgiRuntimeLocator
|
||
|
.getResolver(this.workspaceState);
|
||
|
@@ -201,6 +205,13 @@ public class TychoOsgiRuntimeLocator implements EquinoxRuntimeLocator {
|
||
|
Artifact artifact = repositorySystem.createArtifact(dependency.getGroupId(), dependency.getArtifactId(),
|
||
|
dependency.getVersion(), dependency.getType());
|
||
|
|
||
|
+ if (workspaceReader != null) {
|
||
|
+ File artifactFile = workspaceReader.findArtifact(artifact);
|
||
|
+ if (artifactFile != null) {
|
||
|
+ artifact.setFile(artifactFile);
|
||
|
+ }
|
||
|
+ }
|
||
|
+
|
||
|
ArtifactResolutionRequest request = new ArtifactResolutionRequest();
|
||
|
request.setArtifact(artifact);
|
||
|
request.setResolveRoot(true).setResolveTransitively(false);
|