Spring Kotlin编译错误“;未解析引用“;用于多模块项目
我有多模块结构的spring boot应用程序Spring Kotlin编译错误“;未解析引用“;用于多模块项目,spring,maven,kotlin,Spring,Maven,Kotlin,我有多模块结构的spring boot应用程序 first-module: - services: - interfaces.kt second-module: ... 第二个模块具有spring引导应用程序 @SpringBootApplication class Application { companion object { @JvmStatic fun main(args: Array<String>) {
first-module:
- services:
- interfaces.kt
second-module:
...
第二个模块具有spring引导应用程序
@SpringBootApplication
class Application {
companion object {
@JvmStatic
fun main(args: Array<String>) {
SpringApplicationBuilder(Application::class.java)
.initializers(ConfigServerInitializer.create())
.run(*args)
}
}
}
我真的不明白为什么我会有这样的编译问题
另外,我还有下一个pom插件
kotlin maven插件
org.jetbrains.kotlin
${kotlin.version}
无arg
org.jetbrains.kotlin
科特林·马文·诺格
${kotlin.version}
org.jetbrains.kotlin
kotlin maven插件
${kotlin.version}
春天
编译
编译
编译
${project.basedir}/src/main/kotlin
${project.basedir}/src/main/java
测试编译
测试编译
测试编译
${project.basedir}/src/test/kotlin
${project.basedir}/src/test/java
org.jetbrains.kotlin
科特林·马文·阿洛彭
${kotlin.version}
org.apache.maven.plugins
maven编译器插件
默认编译
没有一个
默认测试编译
没有一个
java编译
编译
编译
org.apache.maven.plugins
maven surefire插件
${maven surefire plugin.version}
**/*它*
**/*测试*
org.jetbrains.kotlin
科特林标准数据库公用
${kotlin.version}
org.jetbrains.kotlin
科特林反射
${kotlin.version}
org.jetbrains.kotlin
科特林·马文·阿洛彭
${kotlin.version}
org.jetbrains.kotlin
科特林标准实验室
org.jetbrains.kotlin
科特林·马文·诺格
${kotlin.version}
org.jetbrains.kotlin
科特林标准实验室
org.apache.maven.plugins
maven编译器插件
默认编译
没有一个
默认测试编译
没有一个
java编译
编译
编译
这里怎么了?我创建了多个使用多模块结构的项目,但这一个有点独特;因为其中一个子模块只持有后来由另一个子模块使用的服务 中定义了类似的场景 我花了一些时间创建了这个,它创建了您想要的多模块结构
first-module:
- services:
- interfaces.kt
second-module:
...
如果你有任何问题,请看一看并告诉我
<build>
<plugins>
<plugin>
<artifactId>kotlin-maven-plugin</artifactId>
<groupId>org.jetbrains.kotlin</groupId>
<version>${kotlin.version}</version>
<configuration>
<compilerPlugins>
<plugin>no-arg</plugin>
</compilerPlugins>
</configuration>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-noarg</artifactId>
<version>${kotlin.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
<build>
<plugins>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
<configuration>
<compilerPlugins>
<plugin>spring</plugin>
</compilerPlugins>
</configuration>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/main/kotlin</sourceDir>
<sourceDir>${project.basedir}/src/main/java</sourceDir>
</sourceDirs>
</configuration>
</execution>
<execution>
<id>test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>test-compile</goal>
</goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/test/kotlin</sourceDir>
<sourceDir>${project.basedir}/src/test/java</sourceDir>
</sourceDirs>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-allopen</artifactId>
<version>${kotlin.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>default-compile</id>
<phase>none</phase>
</execution>
<execution>
<id>default-testCompile</id>
<phase>none</phase>
</execution>
<execution>
<id>java-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<includes>
<include>**/*IT.*</include>
<include>**/*Test.*</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib-common</artifactId>
<version>${kotlin.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-reflect</artifactId>
<version>${kotlin.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-allopen</artifactId>
<version>${kotlin.version}</version>
<exclusions>
<exclusion>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-noarg</artifactId>
<version>${kotlin.version}</version>
<exclusions>
<exclusion>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>default-compile</id>
<phase>none</phase>
</execution>
<execution>
<id>default-testCompile</id>
<phase>none</phase>
</execution>
<execution>
<id>java-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>