簡體   English   中英

使用 NamedParameterJdbcTemplate 時發生異常

[英]exception occurs when NamedParameterJdbcTemplate is used

當我使用NamedParameterJdbcTemplate ,我得到一個異常"No class Def Found Error" 。但是當我使用 JdbcTemplate 時我沒有得到任何異常。它有效。只有當我使用NamedParameterJdbcTemplate時才會發生異常。我得到以下異常。

Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/core/SpringProperties
    at org.springframework.jdbc.core.StatementCreatorUtils.<clinit>(StatementCreatorUtils.java:80)
    at org.springframework.jdbc.core.namedparam.BeanPropertySqlParameterSource.getSqlType(BeanPropertySqlParameterSource.java:103)
    at org.springframework.jdbc.core.namedparam.NamedParameterUtils.buildSqlParameterList(NamedParameterUtils.java:415)
    at org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate.getPreparedStatementCreator(NamedParameterJdbcTemplate.java:373)
    at org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate.update(NamedParameterJdbcTemplate.java:311)
    at com.harsh.spring.test.OffersDAO.update(OffersDAO.java:49)
    at com.harsh.spring.test.App.main(App.java:21)
Caused by: java.lang.ClassNotFoundException: org.springframework.core.SpringProperties

誰能幫幫我嗎。

確保包含所有執行依賴項。 我建議您考慮一些具有聲明性依賴項管理的自動構建工具。 例如,maven 可以將您的應用程序與您需要的每個傳遞依賴項打包在一起,只需使用您可以在http://projects.spring.io/spring-framework/ 中找到的片段:

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>4.0.2.RELEASE</version>
    </dependency>
</dependencies>

對我來說同樣的 Spring 核心版本問題。 我的pom.xml有這個:

<dependency>
    <groupId>springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>1.2.6</version>
</dependency>

並且得到java.lang.NoClassDefFoundError

我將其替換為:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.1.1.RELEASE</version>
</dependency>

然后一切正常。

我在 maven <spring.version>3.2.0.RELEASE</spring.version>使用時遇到了同樣的錯誤,

然后我更改為<spring.version>4.0.2. RELEASE</spring> <spring.version>4.0.2. RELEASE</spring> 版本,現在運行良好。

我遇到了同樣的問題。 我做了什么......在我的 eclipse>Project explorer>Project>Maven 依賴項中。 它向我展示了一些 3.0.0 版本的 spring 依賴項。 我只需右鍵單擊所有選項,從選項中一一選擇 Maven,然后排除 Maven Artifacts。 之后,我在 pom.xml 中添加了所有 spring 4.3.9 依賴項。 有效。

確保在pom.xml有所有這些依賴項

       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context-support</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
     <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
        <optional>true</optional>
    </dependency>       
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
        <exclusions>
            <exclusion>
                <groupId>org.junit.vintage</groupId>
                <artifactId>junit-vintage-engine</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM