mirror of
https://github.com/JetBrains/intellij-platform-plugin-template.git
synced 2024-10-27 20:44:05 +00:00
detekt integration
This commit is contained in:
parent
5af7aa6fc7
commit
3c1166e1f2
3
.github/workflows/tests.yml
vendored
3
.github/workflows/tests.yml
vendored
@ -35,6 +35,9 @@ jobs:
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
# Run detekt
|
||||
- name: Run Linter
|
||||
run: ./gradlew detekt
|
||||
# Run verifyPlugin Gradle task
|
||||
- name: Verify Plugin
|
||||
run: ./gradlew verifyPlugin --no-daemon
|
||||
|
@ -1,9 +1,14 @@
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
|
||||
plugins {
|
||||
id("java") // Compiles Java source files
|
||||
id("org.jetbrains.kotlin.jvm") version "1.3.72" // Kotlin plugins for Gradle
|
||||
id("org.jetbrains.intellij") version "0.4.18" // gradle-intellij-plugin
|
||||
// Java support
|
||||
id("java")
|
||||
// Kotlin support
|
||||
id("org.jetbrains.kotlin.jvm") version "1.3.72"
|
||||
// gradle-intellij-plugin - read more: https://github.com/JetBrains/gradle-intellij-plugin
|
||||
id("org.jetbrains.intellij") version "0.4.18"
|
||||
// detekt linter - read more: https://detekt.github.io/detekt/kotlindsl.html
|
||||
id("io.gitlab.arturbosch.detekt") version "1.8.0"
|
||||
}
|
||||
|
||||
// Import variables from gradle.properties file
|
||||
@ -31,9 +36,11 @@ listOf("compileKotlin", "compileTestKotlin").forEach {
|
||||
// Configure project's dependencies
|
||||
repositories {
|
||||
mavenCentral()
|
||||
jcenter()
|
||||
}
|
||||
dependencies {
|
||||
implementation(kotlin("stdlib-jdk8"))
|
||||
detektPlugins("io.gitlab.arturbosch.detekt:detekt-formatting:1.8.0")
|
||||
}
|
||||
|
||||
// Configure gradle-intellij-plugin plugin. Read more: https://github.com/JetBrains/gradle-intellij-plugin
|
||||
@ -41,16 +48,21 @@ intellij {
|
||||
pluginName = pluginName
|
||||
version = ideaVersion
|
||||
type = ideaType
|
||||
updateSinceUntilBuild = false
|
||||
updateSinceUntilBuild = true
|
||||
downloadSources = sources.toBoolean()
|
||||
setPlugins("java")
|
||||
}
|
||||
|
||||
// Configure detekt plugin. Read more: https://detekt.github.io/detekt/kotlindsl.html
|
||||
detekt {
|
||||
config = files("./detekt-config.yml")
|
||||
}
|
||||
|
||||
tasks {
|
||||
patchPluginXml {
|
||||
version(pluginVersion)
|
||||
sinceBuild(ideaVersion)
|
||||
// changeNotes("")
|
||||
// sinceBuild sinceBuild
|
||||
}
|
||||
|
||||
// publishPlugin {
|
||||
|
6
detekt-config.yml
Normal file
6
detekt-config.yml
Normal file
@ -0,0 +1,6 @@
|
||||
# Default detekt configuration:
|
||||
# https://github.com/detekt/detekt/blob/master/detekt-cli/src/main/resources/default-detekt-config.yml
|
||||
|
||||
formatting:
|
||||
Indentation:
|
||||
active: true
|
@ -9,10 +9,13 @@ private const val BUNDLE = "messages.TemplateBundle"
|
||||
|
||||
object TemplateBundle : DynamicBundle(BUNDLE) {
|
||||
|
||||
@Suppress("SpreadOperator")
|
||||
@JvmStatic
|
||||
fun message(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any): String = getMessage(key, *params)
|
||||
fun message(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any) = getMessage(key, *params)
|
||||
|
||||
@Suppress("SpreadOperator")
|
||||
@JvmStatic
|
||||
fun messagePointer(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any): () -> String = { message(key, *params) }
|
||||
|
||||
fun messagePointer(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any) = run {
|
||||
message(key, *params)
|
||||
}
|
||||
}
|
||||
|
@ -11,12 +11,11 @@ internal class MyDynamicPluginListener : DynamicPluginListener {
|
||||
ServiceManager.getService(MyApplicationService::class.java)
|
||||
}
|
||||
|
||||
override fun pluginLoaded(pluginDescriptor: IdeaPluginDescriptor) {}
|
||||
override fun pluginLoaded(pluginDescriptor: IdeaPluginDescriptor) = Unit
|
||||
|
||||
override fun beforePluginUnload(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) {}
|
||||
override fun beforePluginUnload(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) = Unit
|
||||
|
||||
override fun checkUnloadPlugin(pluginDescriptor: IdeaPluginDescriptor) {}
|
||||
|
||||
override fun pluginUnloaded(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) {}
|
||||
override fun checkUnloadPlugin(pluginDescriptor: IdeaPluginDescriptor) = Unit
|
||||
|
||||
override fun pluginUnloaded(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) = Unit
|
||||
}
|
||||
|
@ -9,5 +9,4 @@ internal class MyProjectManagerListener : ProjectManagerListener {
|
||||
override fun projectOpened(project: Project) {
|
||||
project.getService(MyProjectService::class.java)
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -7,5 +7,4 @@ class MyApplicationService {
|
||||
init {
|
||||
println(TemplateBundle.message("applicationService"))
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -6,7 +6,6 @@ import org.jetbrains.plugins.template.TemplateBundle
|
||||
class MyProjectService(project: Project) {
|
||||
|
||||
init {
|
||||
println(TemplateBundle.message("projectService", project.name))
|
||||
println(TemplateBundle.message("projectService", project.name))
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user