【问题标题】:Plugin not found: jpa未找到插件:jpa
【发布时间】:2018-09-29 21:21:42
【问题描述】:
<plugin>
    <artifactId>kotlin-maven-plugin</artifactId>
    <groupId>org.jetbrains.kotlin</groupId>
    <configuration>
        <args>
            <arg>-Xjsr305=strict</arg>
        </args>
        <compilerPlugins>
            <plugin>spring</plugin>
            <plugin>jpa</plugin>
        </compilerPlugins>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-maven-allopen</artifactId>
            <version>${kotlin.version}</version>
        </dependency>
    </dependencies>
</plugin>

当我运行mvn compile时,控制台中的结果会打印错误:

找不到插件:jpa: java.util.NoSuchElementException

我已经检查了the reference 但仍然无法弄清楚。有没有人遇到过这种情况?

【问题讨论】:

    标签: spring maven spring-boot jpa kotlin


    【解决方案1】:

    将以下依赖项添加到您的 &lt;dependencies&gt; 元素中:

    <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-maven-noarg</artifactId>
        <version>${kotlin.version}</version>
    </dependency>
    

    另见官方Kotlin documentation

    完整的插件配置应该是这样的:

    <plugin>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-maven-plugin</artifactId>
        <configuration>
            <args>
                <arg>-Xjsr305=strict</arg>
            </args>
            <compilerPlugins>
                <plugin>all-open</plugin>
                <plugin>spring</plugin>
                <plugin>no-arg</plugin>
                <plugin>jpa</plugin>
            </compilerPlugins>
        </configuration>
        <dependencies>
            <dependency>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-maven-allopen</artifactId>
                <version>${kotlin.version}</version>
            </dependency>
            <dependency>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-maven-noarg</artifactId>
                <version>${kotlin.version}</version>
            </dependency>
        </dependencies>
    </plugin>
    

    【讨论】:

    • 对于来自 Google 的用户,请确保它是 &lt;build&gt;&lt;plugins&gt;&lt;plugin&gt; (kotlin-maven-plugin) &lt;dependencies&gt; &lt;dependency&gt;... 而不是其他任何地方
    【解决方案2】:

    通过添加以下行解决:

                    <compilerPlugins>
                        <plugin>all-open</plugin>
                        <plugin>spring</plugin>
                        <plugin>no-arg</plugin>
                        <plugin>jpa</plugin>
                    </compilerPlugins>
    

    jpa 插件也需要无参数插件存在

    【讨论】:

    • 真正的(也是唯一必要的)解决方案是您的第一个答案(添加依赖项kotlin-maven-noarg)。之后,您可以使用问题中的&lt;compilerPlugins&gt; 部分。
    猜你喜欢
    • 2019-11-25
    • 1970-01-01
    • 2020-05-03
    • 2019-11-23
    • 2021-03-06
    • 2013-06-27
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    相关资源
    最近更新 更多