Java NoClassDefFoundError异常及Jira本地登录POJO类技术咨询
排查NoClassDefFoundError异常并完善LoginApi POJO类
一、异常原因与解决办法
java.lang.NoClassDefFoundError: io/restassured/response/Response 这个异常的核心是运行时找不到RestAssured的Response类,常见场景和解决方式如下:
依赖未正确引入:编译时IDE可能能找到类,但运行时类路径里缺了RestAssured的jar包。
- 如果用Maven,在
pom.xml里加依赖(要是你的代码不在测试目录下,记得去掉<scope>test</scope>):<dependency> <groupId>io.rest-assured</groupId> <artifactId>rest-assured</artifactId> <version>5.3.0</version> <!-- 用最新稳定版就行 --> <!-- <scope>test</scope> 主代码调用的话注释掉这行 --> </dependency> - 如果用Gradle,在
build.gradle里加:dependencies { implementation 'io.rest-assured:rest-assured:5.3.0' // 主代码用implementation,测试用testImplementation }
- 如果用Maven,在
依赖版本冲突:项目里可能同时存在多个版本的RestAssured,导致类加载混乱。可以用下面的命令查依赖树找冲突:
- Maven:
mvn dependency:tree - Gradle:
./gradlew dependencies
找到冲突后,用<exclusions>(Maven)或exclude(Gradle)把旧版本排除掉。
- Maven:
IDE缓存问题:有时候IDE缓存会搞怪,试试清理缓存(比如IntelliJ的
File -> Invalidate Caches...)再重新构建项目。
二、完善后的LoginApi POJO类
你的代码里setPassword方法没写完,另外为了更实用,我们补充构造方法、toString方法等,完整代码如下:
package com.rest.requestpojo; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; public class LoginApi { @SerializedName("username") @Expose private String username; @SerializedName("password") @Expose private String password; // 无参构造:Gson反序列化时需要默认构造方法 public LoginApi() {} // 全参构造:方便快速创建实例 public LoginApi(String username, String password) { this.username = username; this.password = password; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } // 补全缺失的setPassword方法 public void setPassword(String password) { this.password = password; } // 重写toString:调试时方便查看对象内容 @Override public String toString() { return "LoginApi{" + "username='" + username + '\'' + ", password='" + password + '\'' + '}'; } }
代码说明:
- 补全
setPassword方法,保证属性读写完整; - 加无参构造:Gson反序列化JSON到对象时,默认需要这个;
- 加全参构造:可以直接用
new LoginApi("admin", "123456")快速创建实例; - 重写
toString:日志打印或调试时,能直观看到对象的属性值。
内容的提问来源于stack exchange,提问作者chinmaya
相关产品推荐
相关产品推荐

