因为我是日本人,所以使用英语不好。 请承认。 使用lombok无法很好地编译。 (来源网站是http://projectlombok.org/download.html) Lombok安装的Eclipse编译后用jad反编译。
import java.sql.*;
import lombok.Cleanup;
public class TEST {
public static void main(String[] args) throws Exception {
Connection conn = null;
// Statement
@Cleanup Statement cstmt = null;
cstmt = conn.prepareCall("{call 11111.22222(?,?,?,?,?,?,?,?,?)}");
// Execute
cstmt.executeBatch();
//write file code goes here
}
}
import java.sql.Connection;
import java.sql.Statement;
import java.util.Collections;
import java.util.List;
public class TEST
{
public static void main(String[] args)
throws Exception
{
Connection conn = null;
Statement cstmt = null;
try { cstmt = conn.prepareCall("{call 11111.22222(?,?,?,?,?,?,?,?,?)}");
cstmt.executeBatch();
}
finally
{
if (Collections.singletonList(cstmt).get(0) != null) cstmt.close();
}
}
}
在eclipse的编译结果中,我想要它的结果。 但这下命令行编译结果与eclipse的结果不匹配 javac -cp lib \ lombok.jar src \ TEST.java
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.Statement;
public class TEST
{
public static void main(String[] paramArrayOfString)
throws Exception
{
Object localObject = null;
CallableStatement localCallableStatement = null;
localCallableStatement = localObject.prepareCall("{call 11111.22222(?,?,?,?,?,?,?,?,?)}");
localCallableStatement.executeBatch();
}
}
我希望获得与命令行中执行的编译结果相同的eclipse结果。 我该怎么办?
OS setting
jdk=1.5
eclipse
jdk=1.5
答案 0 :(得分:3)
Lombok要求JDK 1.6与javac
一起使用。但是,使用Eclipse中的Lombok没有这个限制。