Skip to content

Commit

Permalink
set JpsJavaProjectExtension.setOutputUrl when loading JPS project i…
Browse files Browse the repository at this point in the history
…n tests

This allows to keep use `JpsJavaProjectExtension.getOutputUrl`, and in turn `ProjectPaths.getModuleOutputDir` in tests.
This approach works both locally and on build server.

GitOrigin-RevId: 9c47cdca8330c70fc9e0ca54123986e359039fa1
  • Loading branch information
dovchinnikov authored and intellij-monorepo-bot committed Dec 4, 2023
1 parent 214626c commit da8eafc
Showing 1 changed file with 6 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,13 @@ import com.intellij.openapi.util.NlsSafe
import com.intellij.openapi.util.io.FileUtil
import com.intellij.openapi.vfs.VirtualFile
import com.intellij.openapi.vfs.VirtualFileManager
import com.intellij.util.PathUtil
import com.intellij.util.SystemProperties
import com.intellij.util.io.systemIndependentPath
import org.jetbrains.jps.model.JpsProject
import org.jetbrains.jps.model.jarRepository.JpsRemoteRepositoryDescription
import org.jetbrains.jps.model.jarRepository.JpsRemoteRepositoryService
import org.jetbrains.jps.model.java.JpsJavaExtensionService
import org.jetbrains.jps.model.library.JpsLibraryCollection
import org.jetbrains.jps.model.library.JpsOrderRootType
import org.jetbrains.jps.model.serialization.JpsSerializationManager
Expand Down Expand Up @@ -102,7 +104,10 @@ class IntelliJProjectConfiguration {
@JvmStatic
fun loadIntelliJProject(projectHome: String): JpsProject {
val m2Repo = getLocalMavenRepo().systemIndependentPath
return JpsSerializationManager.getInstance().loadProject(projectHome, mapOf(PathMacrosImpl.MAVEN_REPOSITORY to m2Repo), true)
val project = JpsSerializationManager.getInstance().loadProject(projectHome, mapOf(PathMacrosImpl.MAVEN_REPOSITORY to m2Repo), true)
val outPath = Path.of(PathUtil.getJarPathForClass(PathUtil::class.java)).parent.parent
JpsJavaExtensionService.getInstance().getOrCreateProjectExtension(project).outputUrl = outPath.toString()
return project
}

@JvmStatic
Expand Down

0 comments on commit da8eafc

Please sign in to comment.