('kotlinLSP.javaSupport') || false
5 | }
6 |
--------------------------------------------------------------------------------
/kotlin-vscode/client/src/statusBar.ts:
--------------------------------------------------------------------------------
1 | import * as vscode from "vscode";
2 | import {State} from "vscode-languageclient/node";
3 | import { getContext } from "./extension";
4 | import { getLspClient, subscribeToClientEvent } from "./lspClient";
5 |
6 | const TITLE = 'Kotlin'
7 | const LSP_TITLE = 'LSP'
8 |
9 | let statusBarItem: vscode.StatusBarItem | undefined;
10 |
11 | export function registerStatusBarItem() {
12 | statusBarItem = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100);
13 | statusBarItem.text = TITLE;
14 | statusBarItem.show();
15 | updateView();
16 | getContext().subscriptions.push(statusBarItem);
17 | subscribeToClientEvent(() => updateView());
18 | }
19 |
20 | function updateView() {
21 | if (!statusBarItem) return;
22 | statusBarItem.tooltip = computeTooltip();
23 | statusBarItem.text = computeText();
24 | }
25 |
26 | function computeTooltip(): vscode.MarkdownString {
27 | const text = new vscode.MarkdownString()
28 | text.isTrusted = true;
29 | text.supportThemeIcons = true;
30 | text.supportHtml = true;
31 |
32 | const lspState = `${getLspClientStatus()}
`
33 | text.appendMarkdown(`
34 |
35 |
Kotlin
36 | ${lspState}
37 |
38 | `
39 | )
40 | return text;
41 | }
42 |
43 | function computeText(): string {
44 | const clientState = getLspClient()?.state ?? State.Stopped;
45 |
46 | switch (clientState) {
47 | case State.Running:
48 | return `\$(check) ${TITLE}`;
49 | case State.Starting:
50 | return `\$(sync) ${TITLE}`;
51 | default:
52 | return `\$(stop) ${TITLE}`;
53 | }
54 | }
55 |
56 | function getLspClientStatus(): string {
57 | const clientState = getLspClient()?.state ?? State.Stopped;
58 | const restartButton = `$(sync)`
59 | switch (clientState) {
60 | case State.Running:
61 | return `\$(check) ${LSP_TITLE}: Running ${restartButton}`;
62 | case State.Starting:
63 | return `\$(sync) ${LSP_TITLE}: Starting`;
64 | default:
65 | return `\$(stop) ${LSP_TITLE}: Stopped ${restartButton}`;
66 | }
67 | }
--------------------------------------------------------------------------------
/kotlin-vscode/client/testSources/tokenization/sample.kt:
--------------------------------------------------------------------------------
1 | // SYNTAX TEST "source.kotlin" "sample testcase"
2 |
3 | package example.kotlin.highlighting
4 |
5 | import kotlin.math.PI
6 |
7 | inline fun getIntValue(): Int = 42
8 |
9 | abstract class Shape(val name: String) {
10 | abstract val area: Double
11 |
12 | open fun displayInfo() {
13 | println("Shape: $name")
14 | }
15 |
16 | protected open val protectedProperty: String = "Protected"
17 | }
18 |
19 | data class Circle(val radius: Double) : Shape("Circle") {
20 | override val area: Double
21 | get() = PI * radius * radius
22 |
23 | override fun displayInfo() {
24 | super.displayInfo()
25 | println("Radius: $radius, Area: $area")
26 | }
27 | }
28 |
29 | interface Printable {
30 | fun printDetails() {
31 | println("Printing details...")
32 | }
33 | }
34 |
35 | object Singleton : Printable {
36 | override fun printDetails() {
37 | println("This is a Singleton object.")
38 | }
39 |
40 | private val privateProperty: String = "Private"
41 | internal val internalProperty: String = "Internal"
42 | }
43 |
44 | enum class Direction {
45 | NORTH, SOUTH, EAST, WEST
46 | }
47 |
48 | sealed class Result {
49 | data class Success(val message: String) : Result()
50 | data class Error(val errorMessage: String) : Result()
51 | object Loading : Result()
52 | }
53 |
54 | fun main() {
55 | val number: Int = 10
56 | var name: String = "Kotlin"
57 | val doubleValue: Double = 3.14
58 | val binaryNumber = 0b1010
59 | val hexNumber = 0x1A3F
60 | val floatNumber = 3.14e-2
61 |
62 | val nullableString: String? = null
63 | val nonNullableString: String = "Hello"
64 |
65 | val publicProperty: String = "Public"
66 |
67 | println("The number is $number")
68 |
69 | val circle = Circle(5.0)
70 | circle.displayInfo()
71 |
72 | Singleton.printDetails()
73 |
74 | val direction = Direction.NORTH
75 | println("Direction is $direction")
76 | val result: Result = Result.Success("Operation successful")
77 | when (result) {
78 | is Result.Success -> println(result.message)
79 | is Result.Error -> println(result.errorMessage)
80 | Result.Loading -> println("Loading...")
81 | }
82 | }
83 |
84 | /**
85 | * This is a test function
86 | */
87 | fun testFunction(): Int {
88 | return 42
89 | }
90 |
91 | fun controlFlowTests() {
92 | if (immutableValue.isNotEmpty()) {
93 | println("Not empty")
94 | } else {
95 | println("Empty")
96 | }
97 |
98 | for (i in 1..10) {
99 | println(i)
100 | }
101 | }
102 |
103 | annotation class CustomAnnotation
104 |
105 | @CustomAnnotation
106 | class AnnotatedClass
107 | val escapedString = "Line break: \n Tab: \t Unicode: \u1234"
108 | val tripleQuotedString = """This is a
109 | multi-line string"""
110 |
111 | fun operatorsTest(a: Int, b: Int): Int {
112 | return a + b * (a - b) / a % b
113 | }
114 |
115 | fun functionWithVarargs(vararg numbers: Int) {
116 | for (num in numbers) {
117 | println(num)
118 | }
119 | }
120 |
121 | suspend fun fetchData(): String {
122 | return "Data fetched"
123 | }
124 |
125 | val generic: List = listOf(1, 2, 3)
126 |
--------------------------------------------------------------------------------
/kotlin-vscode/client/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "commonjs",
4 | "target": "es2020",
5 | "strict": true,
6 | "lib": [
7 | "es2020"
8 | ],
9 | "outDir": "out",
10 | "rootDir": "src",
11 | "sourceMap": true,
12 | "composite": true,
13 | "tsBuildInfoFile": "out/tsconfig.tsbuildinfo"
14 | },
15 | "include": [
16 | "src", "test"
17 | ],
18 | "exclude": [
19 | "node_modules",
20 | ".vscode-test"
21 | ]
22 | }
--------------------------------------------------------------------------------
/kotlin-vscode/icons/kotlin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/kotlin-vscode/icons/kotlin.png
--------------------------------------------------------------------------------
/kotlin-vscode/language-configuration.json:
--------------------------------------------------------------------------------
1 | {
2 | "comments": {
3 | "lineComment": "//",
4 | "blockComment": [ "/*", "*/" ]
5 | },
6 | "brackets": [
7 | ["{", "}"],
8 | ["[", "]"],
9 | ["(", ")"],
10 | ["<", ">"]
11 | ],
12 | "autoClosingPairs": [
13 | ["{", "}"],
14 | ["[", "]"],
15 | ["(", ")"],
16 | ["\"", "\""],
17 | ["'", "'"],
18 | ["<", ">"],
19 | ["`", "`"]
20 | ],
21 | "surroundingPairs": [
22 | ["{", "}"],
23 | ["[", "]"],
24 | ["(", ")"],
25 | ["\"", "\""],
26 | ["'", "'"],
27 | ["<", ">"],
28 | ["`", "`"]
29 | ]
30 | }
--------------------------------------------------------------------------------
/kotlin-vscode/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "kotlin",
3 | "version": "0.0.1",
4 | "lockfileVersion": 3,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "kotlin",
9 | "version": "0.0.1",
10 | "hasInstallScript": true,
11 | "license": "Apache-2.0",
12 | "dependencies": {
13 | "compile": "^0.0.2",
14 | "run": "^1.5.0"
15 | },
16 | "devDependencies": {
17 | "typescript": "^5.7.2"
18 | },
19 | "engines": {
20 | "vscode": "^1.96.0"
21 | }
22 | },
23 | "node_modules/balanced-match": {
24 | "version": "1.0.2",
25 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
26 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
27 | "license": "MIT"
28 | },
29 | "node_modules/brace-expansion": {
30 | "version": "2.0.1",
31 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
32 | "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
33 | "license": "MIT",
34 | "dependencies": {
35 | "balanced-match": "^1.0.0"
36 | }
37 | },
38 | "node_modules/compile": {
39 | "version": "0.0.2",
40 | "resolved": "https://registry.npmjs.org/compile/-/compile-0.0.2.tgz",
41 | "integrity": "sha512-q5Ql5vqorGj+Z5RIH4hhjbjTYu9ToomfRjPWjEybJ3eT8dE6cnnmkrxZvsEMiMS55Y9pxRP9AVHUhQyen1A7Yg==",
42 | "license": "MIT",
43 | "engines": {
44 | "node": "0.x"
45 | }
46 | },
47 | "node_modules/minimatch": {
48 | "version": "10.0.1",
49 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz",
50 | "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==",
51 | "license": "ISC",
52 | "dependencies": {
53 | "brace-expansion": "^2.0.1"
54 | },
55 | "engines": {
56 | "node": "20 || >=22"
57 | },
58 | "funding": {
59 | "url": "https://github.com/sponsors/isaacs"
60 | }
61 | },
62 | "node_modules/run": {
63 | "version": "1.5.0",
64 | "resolved": "https://registry.npmjs.org/run/-/run-1.5.0.tgz",
65 | "integrity": "sha512-CBPzeX6JQZUdhZpSFyNt2vUk44ivKMWZYCNBYoZYEE46mL9nf6WyMP3320WnzIrJuo89+njiUvlo83jUEXjXLg==",
66 | "dependencies": {
67 | "minimatch": "*"
68 | },
69 | "bin": {
70 | "runjs": "cli.js"
71 | },
72 | "engines": {
73 | "node": ">=v0.9.0"
74 | }
75 | },
76 | "node_modules/typescript": {
77 | "version": "5.8.2",
78 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz",
79 | "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==",
80 | "dev": true,
81 | "license": "Apache-2.0",
82 | "bin": {
83 | "tsc": "bin/tsc",
84 | "tsserver": "bin/tsserver"
85 | },
86 | "engines": {
87 | "node": ">=14.17"
88 | }
89 | }
90 | }
91 | }
92 |
--------------------------------------------------------------------------------
/kotlin-vscode/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "kotlin",
3 | "displayName": "Kotlin by JetBrains",
4 | "description": "Language Support for Kotlin by JetBrains",
5 | "author": "JetBrains",
6 | "publisher": "JetBrains",
7 | "bugs": "https://github.com/Kotlin/kotlin-lsp",
8 | "icon": "icons/kotlin.png",
9 | "version": "0.0.1",
10 | "license": "Apache-2.0",
11 | "repository": {
12 | "url": "https://github.com/Kotlin/kotlin-lsp",
13 | "directory": "kotlin-vscode"
14 | },
15 | "engines": {
16 | "vscode": "^1.96.0"
17 | },
18 | "categories": [
19 | "Programming Languages"
20 | ],
21 | "main": "./client/out/extension",
22 | "activationEvents": [
23 | "onLanguage:kotlin",
24 | "onCommand:jetbrains.activateLsp"
25 | ],
26 | "contributes": {
27 | "languages": [
28 | {
29 | "id": "kotlin",
30 | "aliases": [
31 | "Kotlin",
32 | "kotlin"
33 | ],
34 | "extensions": [
35 | ".kt"
36 | ],
37 | "configuration": "./language-configuration.json"
38 | }
39 | ],
40 | "grammars": [
41 | {
42 | "language": "kotlin",
43 | "scopeName": "source.kotlin",
44 | "path": "./syntaxes/kotlin.tmLanguage.json"
45 | }
46 | ],
47 | "configuration":{
48 | "title": "Kotlin",
49 | "properties": {
50 | "kotlinLSP.dev.serverPort": {
51 | "type": "number",
52 | "default": -1,
53 | "description": "Port for the locally started Kotlin Language Server to listen on. -1 to start the bundled LSP"
54 | },
55 | "kotlinLSP.jrePathToRunLsp": {
56 | "type": "string",
57 | "default": null,
58 | "description": "A path to the JRE that will be used to run the LSP. It should be at least version 17. If not specified, default java version will be used"
59 | }
60 | }
61 | },
62 | "commands": [
63 | {
64 | "command": "jetbrains.exportWorkspaceToJson",
65 | "category": "Workspaces",
66 | "title": "Export workspace structure to JSON"
67 | },
68 | {
69 | "command": "jetbrains.kotlin.restartLsp",
70 | "category": "Kotlin",
71 | "title": "Restart LSP server"
72 | }
73 | ]
74 | },
75 | "devDependencies": {
76 | "typescript": "^5.7.2"
77 | },
78 | "dependencies": {
79 | "compile": "^0.0.2",
80 | "run": "^1.5.0"
81 | },
82 | "scripts": {
83 | "vscode:prepublish": "npm install && npm run compile && npm run unpack-server",
84 | "compile": "tsc -b",
85 | "watch": "tsc -b -w",
86 | "unpack-server": "rm -rf server/extracted && mkdir -p server/extracted && unzip -o $LSP_ZIP_PATH -d server/extracted",
87 | "postinstall": "cd client && npm install"
88 | }
89 | }
90 |
--------------------------------------------------------------------------------
/kotlin-vscode/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "commonjs",
4 | "strict": true,
5 | "target": "es2020",
6 | "lib": [
7 | "es2020"
8 | ],
9 | "outDir": "out",
10 | "rootDir": "src",
11 | "sourceMap": true,
12 | "tsBuildInfoFile": "out/tsconfig.tsbuildinfo"
13 | },
14 | "exclude": [
15 | "node_modules",
16 | ".vscode-test"
17 | ],
18 | "references": [
19 | {
20 | "path": "./client"
21 | }
22 | ]
23 | }
--------------------------------------------------------------------------------
/scripts/lsp-kotlin-emacs.el:
--------------------------------------------------------------------------------
1 | (defun kotlin-lsp-server-start-fun (port)
2 | (list "kotlin-lsp.sh" "--port" (number-to-string port)))
3 | (with-eval-after-load 'lsp-mode
4 | (add-to-list 'lsp-language-id-configuration
5 | '(kotlin-mode . "kotlin"))
6 |
7 | (lsp-register-client
8 | (make-lsp-client
9 | :new-connection (lsp-tcp-connection 'kotlin-lsp-server-start-fun)
10 | :activation-fn (lsp-activate-on "kotlin")
11 | :major-modes '(kotlin-mode)
12 | :priority -1
13 | :server-id 'kotlin-jb-lsp
14 | )
15 | )
16 | )
--------------------------------------------------------------------------------
/scripts/neovim.md:
--------------------------------------------------------------------------------
1 | # neovim setup
2 |
3 | ## stdio way
4 |
5 | 1. Ensure socat and netcat are installed
6 |
7 | 2. Ensure `kotlin-lsp.sh` is executable
8 |
9 | ```sh
10 | chmod +x $KOTLIN_LSP_DIR/kotlin-lsp.sh
11 | ```
12 |
13 | 3. Create a symlink inside your `PATH` to `kotlin-lsp.sh` script, e.g.:
14 |
15 | ```sh
16 | ln -s $KOTLIN_LSP_DIR/kotlin-lsp.sh $HOME/.local/bin/kotlin-ls
17 | ```
18 |
19 | 4. Configure [nvim.lsp](https://neovim.io/doc/user/lsp.html) e.g:
20 | ```lua
21 | {
22 | cmd = { "kotlin-ls", "--stdio" },
23 | single_file_support = true,
24 | filetypes = { "kotlin" },
25 | root_markers = { "build.gradle", "build.gradle.kts", "pom.xml" },
26 | }
27 | ```
28 |
29 | ## tcp way
30 |
31 | Requires manual launch of language server
32 |
33 | 1. launch language server with `kotlin-lsp.sh` script
34 |
35 | 2. Configure [nvim.lsp](https://neovim.io/doc/user/lsp.html) e.g:
36 | ```lua
37 | {
38 | cmd = vim.lsp.rpc.connect('127.0.0.1', tonumber(9999))
39 | single_file_support = true,
40 | filetypes = { "kotlin" },
41 | root_markers = { "build.gradle", "build.gradle.kts", "pom.xml" },
42 | }
43 | ```
44 |
45 |
--------------------------------------------------------------------------------
/scripts/zed-settings.json:
--------------------------------------------------------------------------------
1 | {
2 | // Note: you'll need to install "Kotlin" extension via Zed extensions: https://github.com/zed-extensions/kotlin
3 | // See the README.md file for more information on how to configure kotlin-lsp in Zed
4 | // Also note: diagnostics do not work because they are pull-based in our implementation, but the editor expects them to be push-based
5 | // Things like navigation, completion, find references and code actions like organize imports do.
6 | "languages": {
7 | "Kotlin": {
8 | "language_servers": [
9 | "kotlin-lsp"
10 | ]
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/workspace-import/BUILD.bazel:
--------------------------------------------------------------------------------
1 | ### auto-generated section `build language-server.project-import` start
2 | load("@community//build:compiler-options.bzl", "create_kotlinc_options")
3 | load("@rules_jvm//:jvm.bzl", "jvm_library")
4 |
5 | create_kotlinc_options(
6 | name = "custom",
7 | context_receivers = True
8 | )
9 |
10 | jvm_library(
11 | name = "language-server-project-import",
12 | module_name = "language-server.project-import",
13 | visibility = ["//visibility:public"],
14 | srcs = glob(["gen/**/*.kt", "gen/**/*.java", "src/**/*.kt", "src/**/*.java"], allow_empty = True),
15 | kotlinc_opts = ":custom",
16 | deps = [
17 | "@lib//:gradle",
18 | "@lib//:kotlin-stdlib",
19 | "@community//platform/workspace/jps",
20 | "@community//platform/workspace/storage",
21 | "//language-server/community/api.core",
22 | "@community//plugins/gradle",
23 | "@community//platform/util",
24 | "@lib//:kotlinx-serialization-core",
25 | "@lib//:kotlinx-serialization-json",
26 | "@community//java/java-impl:impl",
27 | "@community//java/openapi:java",
28 | "@community//plugins/kotlin/base/facet",
29 | "@community//jps/model-api:model",
30 | "@lib//:kotlinc-kotlin-jps-common",
31 | "@lib//:kotlinc-kotlin-jps-plugin-classpath",
32 | ]
33 | )
34 | ### auto-generated section `build language-server.project-import` end
--------------------------------------------------------------------------------
/workspace-import/gen/com/jetbrains/ls/imports/api/impl/MetadataStorageImpl.kt:
--------------------------------------------------------------------------------
1 | package com.jetbrains.ls.imports.api.impl
2 |
3 | import com.intellij.platform.workspace.storage.WorkspaceEntityInternalApi
4 | import com.intellij.platform.workspace.storage.metadata.impl.MetadataStorageBase
5 | import com.intellij.platform.workspace.storage.metadata.model.FinalClassMetadata
6 | import com.intellij.platform.workspace.storage.metadata.model.OwnPropertyMetadata
7 | import com.intellij.platform.workspace.storage.metadata.model.StorageTypeMetadata
8 | import com.intellij.platform.workspace.storage.metadata.model.ValueTypeMetadata
9 |
10 | @OptIn(WorkspaceEntityInternalApi::class)
11 | internal object MetadataStorageImpl: MetadataStorageBase() {
12 | override fun initializeMetadata() {
13 |
14 | var typeMetadata: StorageTypeMetadata
15 |
16 | typeMetadata = FinalClassMetadata.ClassMetadata(fqName = "com.jetbrains.ls.imports.api.WorkspaceEntitySource", properties = listOf(OwnPropertyMetadata(isComputable = false, isKey = false, isOpen = false, name = "virtualFileUrl", valueType = ValueTypeMetadata.SimpleType.CustomType(isNullable = false, typeMetadata = FinalClassMetadata.KnownClass(fqName = "com.intellij.platform.workspace.storage.url.VirtualFileUrl")), withDefault = false)), supertypes = listOf("com.intellij.platform.workspace.storage.EntitySource"))
17 |
18 | addMetadata(typeMetadata)
19 | }
20 |
21 | override fun initializeMetadataHash() {
22 | addMetadataHash(typeFqn = "com.intellij.platform.workspace.storage.EntitySource", metadataHash = -1916480691)
23 | addMetadataHash(typeFqn = "com.jetbrains.ls.imports.api.WorkspaceEntitySource", metadataHash = 20366397)
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/workspace-import/language-server.project-import.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | $KOTLIN_BUNDLED$/lib/kotlinx-serialization-compiler-plugin.jar
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/workspace-import/src/com/jetbrains/ls/imports/api/WorkspaceEntitySource.kt:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | package com.jetbrains.ls.imports.api
3 |
4 | import com.intellij.platform.workspace.storage.EntitySource
5 | import com.intellij.platform.workspace.storage.url.VirtualFileUrl
6 |
7 | data class WorkspaceEntitySource(override val virtualFileUrl: VirtualFileUrl): EntitySource
8 |
--------------------------------------------------------------------------------
/workspace-import/src/com/jetbrains/ls/imports/api/WorkspaceImporter.kt:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | package com.jetbrains.ls.imports.api
3 |
4 | import com.intellij.platform.workspace.storage.MutableEntityStorage
5 | import com.intellij.platform.workspace.storage.url.VirtualFileUrlManager
6 | import java.nio.file.Path
7 |
8 | interface WorkspaceImporter {
9 | suspend fun tryImportWorkspace(projectDirectory: Path, virtualFileUrlManager: VirtualFileUrlManager, onUnresolvedDependency: (String) -> Unit): MutableEntityStorage? {
10 | if (!isApplicableDirectory(projectDirectory)) return null
11 | return importWorkspace(projectDirectory, virtualFileUrlManager, onUnresolvedDependency)
12 | }
13 |
14 | suspend fun importWorkspace(projectDirectory: Path, virtualFileUrlManager: VirtualFileUrlManager, onUnresolvedDependency: (String) -> Unit): MutableEntityStorage
15 | fun isApplicableDirectory(projectDirectory: Path): Boolean
16 | }
17 |
18 | class WorkspaceImportException(displayMessage: String, val logMessage: String?): Exception(displayMessage)
--------------------------------------------------------------------------------
/workspace-import/src/com/jetbrains/ls/imports/json/JsonWorkspaceImporter.kt:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | package com.jetbrains.ls.imports.json
3 |
4 | import com.intellij.platform.workspace.storage.MutableEntityStorage
5 | import com.intellij.platform.workspace.storage.impl.url.toVirtualFileUrl
6 | import com.intellij.platform.workspace.storage.url.VirtualFileUrlManager
7 | import com.jetbrains.ls.imports.api.WorkspaceEntitySource
8 | import com.jetbrains.ls.imports.api.WorkspaceImportException
9 | import com.jetbrains.ls.imports.api.WorkspaceImporter
10 | import kotlinx.serialization.SerializationException
11 | import kotlinx.serialization.json.Json
12 | import java.nio.file.Path
13 | import kotlin.io.path.div
14 | import kotlin.io.path.exists
15 | import kotlin.io.path.notExists
16 |
17 | object JsonWorkspaceImporter : WorkspaceImporter {
18 | override suspend fun importWorkspace(
19 | projectDirectory: Path,
20 | virtualFileUrlManager: VirtualFileUrlManager,
21 | onUnresolvedDependency: (String) -> Unit
22 | ): MutableEntityStorage {
23 | try {
24 | val content = (projectDirectory / "workspace.json").toFile().readText()
25 | val workspaceData = Json.decodeFromString(content)
26 | workspaceData.modules.forEach { module ->
27 | module.dependencies
28 | .filterIsInstance()
29 | .filter { it.name != "JDK" }
30 | .filter { dependency -> workspaceData.libraries.none { it.name == dependency.name } }
31 | .forEach { onUnresolvedDependency(it.name.removePrefix("Gradle: ")) }
32 | }
33 | workspaceData.libraries.forEach { library ->
34 | if (library.roots.any { toAbsolutePath(it.path, projectDirectory).notExists()}) {
35 | onUnresolvedDependency(library.name.removePrefix("Gradle: "))
36 | }
37 | }
38 | return workspaceModel(
39 | workspaceData,
40 | projectDirectory,
41 | WorkspaceEntitySource(projectDirectory.toVirtualFileUrl(virtualFileUrlManager)),
42 | virtualFileUrlManager
43 | )
44 | } catch (e: SerializationException) {
45 | throw WorkspaceImportException(
46 | "Error parsing workspace.json",
47 | "Error parsing workspace.json:\n ${e.message ?: e.stackTraceToString()}"
48 | )
49 | } catch (e: Exception) {
50 | throw e
51 | }
52 | }
53 |
54 | override fun isApplicableDirectory(projectDirectory: Path): Boolean =
55 | (projectDirectory / "workspace.json").exists()
56 |
57 | }
--------------------------------------------------------------------------------
/workspace-import/src/com/jetbrains/ls/imports/json/XmlUtils.kt:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | package com.jetbrains.ls.imports.json
3 |
4 | import org.w3c.dom.Document
5 | import org.w3c.dom.Element
6 | import org.w3c.dom.Node
7 | import java.io.StringReader
8 | import javax.xml.parsers.DocumentBuilderFactory
9 | import org.xml.sax.InputSource
10 | import java.io.StringWriter
11 | import javax.xml.transform.OutputKeys
12 | import javax.xml.transform.TransformerFactory
13 | import javax.xml.transform.dom.DOMSource
14 | import javax.xml.transform.stream.StreamResult
15 |
16 | internal fun parseXml(xmlString: String): XmlElement {
17 | val factory = DocumentBuilderFactory.newInstance()
18 | val builder = factory.newDocumentBuilder()
19 | val inputSource = InputSource(StringReader(xmlString))
20 | val document = builder.parse(inputSource)
21 | val root = document.documentElement
22 | return parseElement(root, xmlString)
23 | }
24 |
25 | private fun parseElement(element: Element, xmlString: String): XmlElement {
26 | val attributeNodes = mutableListOf()
27 | for (i in 0 until element.attributes.length) {
28 | val attr = element.attributes.item(i)
29 | attributeNodes.add(attr)
30 | }
31 |
32 | // An attempt to preserve the original attribute order for better readability. Not very reliable, but works in most cases.
33 | attributeNodes.sortBy { xmlString.indexOf(it.nodeName) }
34 |
35 | val children = mutableListOf()
36 | val childNodes = element.childNodes
37 | for (i in 0 until childNodes.length) {
38 | val childNode = childNodes.item(i)
39 | if (childNode.nodeType == Node.ELEMENT_NODE) {
40 | children.add(parseElement(childNode as Element, xmlString))
41 | }
42 | }
43 |
44 | val text = element.textContent.trim().takeIf { it.isNotEmpty() }
45 |
46 | return XmlElement(
47 | tag = element.tagName,
48 | attributes = attributeNodes.associate { it.nodeName to it.nodeValue },
49 | children = children,
50 | text = text
51 | )
52 | }
53 |
54 |
55 | internal fun toXml(xmlElement: XmlElement): String {
56 | val documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder()
57 | val document = documentBuilder.newDocument()
58 | val rootElement = buildElement(document, xmlElement)
59 | document.appendChild(rootElement)
60 | val writer = StringWriter()
61 | val transformer = TransformerFactory.newInstance().newTransformer()
62 | transformer.setOutputProperty(OutputKeys.INDENT, "yes")
63 | transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4")
64 | transformer.transform(DOMSource(document), StreamResult(writer))
65 | return writer.toString()
66 | }
67 |
68 | private fun buildElement(document: Document, xmlElement: XmlElement): Element {
69 | val element = document.createElement(xmlElement.tag)
70 | xmlElement.attributes.forEach { (key, value) ->
71 | element.setAttribute(key, value)
72 | }
73 | xmlElement.children.forEach { child ->
74 | val childElement = buildElement(document, child)
75 | element.appendChild(childElement)
76 | }
77 | xmlElement.text?.let {
78 | element.appendChild(document.createTextNode(it))
79 | }
80 | return element
81 | }
82 |
--------------------------------------------------------------------------------
/workspace-import/src/com/jetbrains/ls/imports/utils/uri.kt:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | package com.jetbrains.ls.imports.utils
3 |
4 | import com.intellij.platform.workspace.storage.url.VirtualFileUrl
5 | import com.intellij.platform.workspace.storage.url.VirtualFileUrlManager
6 | import com.jetbrains.ls.api.core.util.UriConverter
7 | import java.nio.file.Path
8 | import kotlin.io.path.absolutePathString
9 |
10 | internal fun String.toIntellijUri(virtualFileUrlManager: VirtualFileUrlManager): VirtualFileUrl =
11 | virtualFileUrlManager.getOrCreateFromUrl(asIntelliJUriString())
12 |
13 | internal fun Path.toIntellijUri(virtualFileUrlManager: VirtualFileUrlManager): VirtualFileUrl =
14 | absolutePathString().toIntellijUri(virtualFileUrlManager)
15 |
16 | private fun String.asIntelliJUriString(): String {
17 | val scheme = substringBefore("://", missingDelimiterValue = "file")
18 | val path = substringAfter("://")
19 | val uri = "$scheme://$path"
20 | val lspUri = UriConverter.intellijUriToLspUri(uri)
21 | return UriConverter.lspUriToIntellijUri(lspUri)!!
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/workspace-import/test/BUILD.bazel:
--------------------------------------------------------------------------------
1 | ### auto-generated section `build language-server.project-import.test` start
2 | load("@community//build:compiler-options.bzl", "create_kotlinc_options")
3 | load("@rules_java//java:defs.bzl", "java_library")
4 | load("@rules_jvm//:jvm.bzl", "jvm_library", "jvm_test")
5 |
6 | create_kotlinc_options(
7 | name = "custom",
8 | context_receivers = True
9 | )
10 |
11 | java_library(
12 | name = "test",
13 | visibility = ["//visibility:public"]
14 | )
15 |
16 | jvm_library(
17 | name = "test_test_lib",
18 | visibility = ["//visibility:public"],
19 | srcs = glob(["test/**/*.kt", "test/**/*.java"], allow_empty = True),
20 | kotlinc_opts = ":custom",
21 | deps = [
22 | "@lib//:kotlin-stdlib",
23 | "@lib//:junit5",
24 | "@lib//:gson",
25 | "@community//platform/workspace/storage",
26 | "//language-server/test-api:test-api_test_lib",
27 | "@community//platform/projectModel-impl",
28 | "@community//platform/util",
29 | "//language-server/community/workspace-import:language-server-project-import",
30 | "@community//platform/workspace/jps",
31 | "//language-server/api.impl.analyzer",
32 | "//language-server/community/api.core",
33 | "//language-server/community/api.core:api.core_test_lib",
34 | "@community//plugins/kotlin/base/facet",
35 | "@lib//:kotlinx-serialization-json",
36 | "@lib//:kotlinx-serialization-core",
37 | "@community//platform/core-impl",
38 | ]
39 | )
40 |
41 | jvm_test(
42 | name = "test_test",
43 | runtime_deps = [":test_test_lib"]
44 | )
45 | ### auto-generated section `build language-server.project-import.test` end
--------------------------------------------------------------------------------
/workspace-import/test/language-server.project-import.test.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/.gitignore:
--------------------------------------------------------------------------------
1 | **/.gradle
2 | **/build
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/app/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm")
3 | }
4 |
5 | dependencies {
6 | implementation(project(":lib"))
7 | implementation(kotlin("reflect"))
8 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/app/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/app/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/app/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/app/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/app/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/app/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/app/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/app/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/app/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/app/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/app/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/app/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm") version "1.9.10"
3 | }
4 |
5 | subprojects {
6 | repositories {
7 | mavenCentral()
8 | }
9 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/lib/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm")
3 | }
4 |
5 | dependencies {
6 | implementation(kotlin("stdlib"))
7 | }
8 |
9 | // Custom source sets
10 | sourceSets {
11 | create("integrationTest") {
12 | kotlin.srcDirs("src/integrationTest/kotlin")
13 | resources.srcDirs("src/integrationTest/resources")
14 | compileClasspath += sourceSets["main"].output
15 | runtimeClasspath += sourceSets["main"].output
16 | }
17 | }
18 |
19 | tasks.register("integrationTest") {
20 | testClassesDirs = sourceSets["integrationTest"].output.classesDirs
21 | classpath = sourceSets["integrationTest"].runtimeClasspath
22 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/lib/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/settings.gradle.kts:
--------------------------------------------------------------------------------
1 | rootProject.name = "multi-project-source-sets"
2 |
3 | include("lib")
4 | include("app")
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/CustomSourceSets/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/CustomSourceSets/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm") version "1.9.10"
3 | application // Enables creating a runnable application
4 | }
5 |
6 | repositories {
7 | // Maven Central (default source for most libraries)
8 | mavenCentral()
9 |
10 | // Google Maven repository (e.g., for Android-related or other Google-provided libraries)
11 | google()
12 |
13 | // JFrog Bintray (common hosting for projects like JCenter-based libraries)
14 | maven {
15 | url = uri("https://repo.gradle.org/gradle/libs-releases") // Example for Gradle-provided dependencies
16 | }
17 |
18 | // Spring Plugins repository for Spring-related dependencies
19 | maven {
20 | url = uri("https://repo.spring.io/plugins-release")
21 | }
22 |
23 | // JitPack repository for GitHub-hosted dependencies
24 | maven {
25 | url = uri("https://jitpack.io")
26 | }
27 | }
28 |
29 | dependencies {
30 | // Kotlin Standard Library
31 | implementation(kotlin("stdlib"))
32 |
33 | // Coroutines for asynchronous programming
34 | implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1")
35 |
36 | // Moshi for JSON serialization/deserialization
37 | implementation("com.squareup.moshi:moshi:1.15.0")
38 |
39 | // Apache Commons Lang - popular utility library
40 | implementation("org.apache.commons:commons-lang3:3.12.0")
41 |
42 | // Guava (core libraries for Java by Google)
43 | implementation("com.google.guava:guava:32.1.1-jre")
44 |
45 | // Logback (logging framework)
46 | implementation("ch.qos.logback:logback-classic:1.4.11")
47 |
48 | // Custom JitPack dependency hosted on GitHub
49 | implementation("com.github.User:Repo:Tag") // Replace "User", "Repo", and "Tag" with actual GitHub repo values
50 |
51 | // Compile-only dependencies (e.g., for annotation processors)
52 | compileOnly("org.projectlombok:lombok:1.18.28")
53 |
54 | // Annotation processor
55 | annotationProcessor("org.projectlombok:lombok:1.18.28")
56 |
57 | // Runtime-only dependencies (libraries needed only at runtime)
58 | runtimeOnly("mysql:mysql-connector-java:8.0.34") // MySQL connector for database operations
59 |
60 | // Testing dependencies
61 | testImplementation(kotlin("test")) // Kotlin test framework
62 | testImplementation("org.junit.jupiter:junit-jupiter:5.10.0") // JUnit 5 for testing
63 | testImplementation("io.mockk:mockk:1.13.7") // Mocking library for Kotlin
64 | testRuntimeOnly("org.junit.platform:junit-platform-launcher:1.10.0")
65 | }
66 |
67 | tasks.test {
68 | useJUnitPlatform() // Enable JUnit 5 for testing.
69 | }
70 |
71 | application {
72 | // Define the main class for the runnable application
73 | mainClass.set("com.example.kotlin.MainKt")
74 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/settings.gradle.kts:
--------------------------------------------------------------------------------
1 | rootProject.name = "kotlin-dependency-example"
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/Dependencies/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/Dependencies/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/Dependencies/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/Dependencies/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/Dependencies/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Dependencies/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/Dependencies/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/Empty/.gitkeep:
--------------------------------------------------------------------------------
1 | There's no Gradle project in this directory
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/build.gradle:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | dependencies {
3 | implementation project(':core')
4 | }
5 |
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/api/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/build.gradle:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | plugins {
3 | id 'org.jetbrains.kotlin.jvm' version '1.9.10' apply false
4 | }
5 |
6 | subprojects {
7 | repositories {
8 | mavenCentral()
9 | }
10 |
11 | apply plugin: 'org.jetbrains.kotlin.jvm'
12 |
13 | tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile) {
14 | kotlinOptions {
15 | jvmTarget = '17'
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/build.gradle:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | dependencies {
3 | implementation "org.jetbrains.kotlin:kotlin-stdlib"
4 | }
5 |
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/core/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/build.gradle:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | dependencies {
3 | implementation project(':api')
4 | implementation "org.jetbrains.kotlin:kotlin-reflect"
5 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/service/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/settings.gradle:
--------------------------------------------------------------------------------
1 | // Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
2 | rootProject.name = 'multi-project-example'
3 |
4 | include 'core', 'api', 'service'
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectGroovyDSL/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/build.gradle.kts:
--------------------------------------------------------------------------------
1 | dependencies {
2 | implementation(project(":core"))
3 | }
4 |
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/api/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm") version "1.9.10"
3 | }
4 |
5 | subprojects {
6 | repositories {
7 | mavenCentral()
8 | }
9 |
10 | plugins.apply("org.jetbrains.kotlin.jvm")
11 |
12 | tasks.withType {
13 | kotlinOptions.jvmTarget = "17"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/build.gradle.kts:
--------------------------------------------------------------------------------
1 | dependencies {
2 | implementation(kotlin("stdlib"))
3 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/core/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/build.gradle.kts:
--------------------------------------------------------------------------------
1 | dependencies {
2 | implementation(project(":api"))
3 | implementation(kotlin("reflect"))
4 | }
5 |
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/service/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/settings.gradle.kts:
--------------------------------------------------------------------------------
1 | rootProject.name = "multi-project-example"
2 |
3 | include("core")
4 | include("api")
5 | include("service")
6 |
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/MultiProjectKotlinDSL/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/NonExistentDependency/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm") version "1.9.10"
3 | application
4 | }
5 |
6 | repositories {
7 | mavenCentral()
8 | google()
9 | }
10 |
11 | dependencies {
12 | implementation(kotlin("stdlib"))
13 | implementation("org.apache.commons:commons-lang3:3.12.0")
14 | implementation("com.example.nonexistent:nonexistent-library:1.0.0")
15 | }
16 |
17 | application {
18 | // Specify the main class of the application
19 | mainClass.set("com.example.MainKt")
20 | }
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/NonExistentDependency/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/NonExistentDependency/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/NonExistentDependency/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/NonExistentDependency/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/NonExistentDependency/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/NonExistentDependency/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/NonExistentDependency/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/NonExistentDependency/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/NonExistentDependency/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/NonExistentDependency/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/NonExistentDependency/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/NonExistentDependency/src/test/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/PetClinic/src/main/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/PetClinic/src/main/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/PetClinic/src/main/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/PetClinic/src/main/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/PetClinic/src/main/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/PetClinic/src/main/resources/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/PetClinic/src/test/java/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/PetClinic/src/test/java/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/PetClinic/src/test/kotlin/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/PetClinic/src/test/kotlin/.gitkeep
--------------------------------------------------------------------------------
/workspace-import/test/testData/gradle/PetClinic/src/test/resources/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Kotlin/kotlin-lsp/7c57355182009640973ba6baf087e1eff86af608/workspace-import/test/testData/gradle/PetClinic/src/test/resources/.gitkeep
--------------------------------------------------------------------------------