运行 ./gradlew build 时出现 JdbcSQLInvalidAuthorizationSpecException 如果我单击 intellij 的运行按钮,我的测试就通过了。
UserDaoJdbcImpTest > initializationError FAILED
java.lang.RuntimeException at UserDaoJdbcImpTest.java:52
Caused by: org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException at UserDaoJdbcImpTest.java:32
private static final String DB_URL = "jdbc:h2:mem:db;DB_CLOSE_DELAY=-1;MODE=POSTGRESQL";
private static final String USER = "sa";
private static final String PASSWORD = "";
private UserDaoJdbc userDaoJdbc;
private static final String TABLE_NAME = "user_details";
@BeforeAll
public static void setUpDatabase() throws ClassNotFoundException {
Class.forName("org.h2.Driver");
try(Connection connection = DriverManager.getConnection(DB_URL, USER, PASSWORD);
Statement statement = connection.createStatement()) {
// setup user_details table
;
} catch (Exception e) {
throw new RuntimeException(e);
}
}
如果我将其更改为 DB_URL ,./gradew build 可以工作,但不知道为什么
private static final String DB_URL = "jdbc:h2:~/test;MODE=POSTGRESQL";