Java错误:包com.sun.rowset不可见:com.sun.rowset是在模块java.sql.rowset中声明的,该模块不会将其导出
我只是尝试运行此代码:
import com.sun.rowset.CachedRowSetImpl;
public class Test {
public static void main(String[] args) throws Exception{
CachedRowSetImpl crs = new CachedRowSetImpl();
}
}
当我运行它时,我得到:
错误:(1,15)java:包com.sun.rowset不可见(包 com.sun.rowset在模块java.sql.rowset中声明,该模块不 导出)
我正在使用IntelliJ,并且尝试导入rs2xml.jar,但仍然没有帮助。
解决方案
使用Java 9
您不能再访问此类。在理想的情况下,你不应该这样做。这是因为javax.sql.rowset
模块中没有导出该类的包。在Java-9
中执行此操作的正确方式为:
import javax.sql.rowset.*;
public class Test {
public static void main(String[] args) throws Exception {
CachedRowSet crs = RowSetProvider.newFactory().createCachedRowSet();
}
}
要了解我们可以转到模块描述(module-info.java
)并找到导出的包列表:
exports javax.sql.rowset;
exports javax.sql.rowset.serial;
exports javax.sql.rowset.spi;
相关文章