从Java8迁移到Java11后,出现错误“包com.sun.jndi.ldap不可见”。但是我需要LdapCtxFactory类的此包。软件包是否已移动?我是否应该为Ldap-Connection使用另一个类?
最好的祝福
最佳答案
由于您仅使用类LdapCtxFactory
是配置设置,因此
env.put(Context.INITIAL_CONTEXT_FACTORY, LdapCtxFactory.class.getName());
您可以通过将
LdapCtxFactory.class.getName()
替换为限定名称"com.sun.jndi.ldap.LdapCtxFactory"
来删除对类的依赖,即env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");