Java 在H2中创建别名时如何避免tmp文件
我有H2 db,它的别名如下Java 在H2中创建别名时如何避免tmp文件,java,h2,Java,H2,我有H2 db,它的别名如下 CREATE ALIAS TO_TIMESTAMP as ' import java.text.*; import java.sql.Timestamp; import java.util.Date; @CODE Timestamp to_timestamp(String dateText, String oraclePattern) throws Exception { String javaDatePattern = null;
CREATE ALIAS TO_TIMESTAMP as '
import java.text.*;
import java.sql.Timestamp;
import java.util.Date;
@CODE
Timestamp to_timestamp(String dateText, String oraclePattern) throws Exception {
String javaDatePattern = null;
if (oraclePattern.equals("fmMMfm/fmDDfm/YYYY fmHH12fm:MI:SS.FF AM")) {
javaDatePattern = "MM/dd/yyyy";
}
if (javaDatePattern==null) {
throw new RuntimeException("Unhandled oracle date pattern");
}
SimpleDateFormat sdf = new SimpleDateFormat(javaDatePattern);
Date date= sdf.parse(dateText);
return new Timestamp(date.getTime());
}
';
然而,当我运行使用这个别名的junit测试时,我不断地得到错误
; nested exception is org.h2.jdbc.JdbcSQLException: IO Exception:
"java.io.FileNotFoundException: /var/tmp/org/h2/dynamic/TO_TIMESTAMP.java
(Permission denied)"; "/var/tmp/org/h2/dynamic/TO_TIMESTAMP.java";
它在eclipse上运行良好,但在unix上运行时失败了。
我想知道如何防止h2在该目录下的unix中创建tmp文件(生成的java),或者在没有上述错误的情况下编译