有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java解析Weblogic依赖项在编译时工作正常,但在运行时失败

我已经将一个简单的Weblogic客户端设置为一个Maven项目,它从

maven.oracle.com

它可以使用mvn install进行良好编译,但实际使用

java -verbose -cp target/simple-1.0-SNAPSHOT.jar org.test.App

它死在:

java.lang.NoClassDefFoundError: weblogic/xml/crypto/wss/provider/CredentialProvider at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2625) at java.lang.Class.getMethod0(Class.java:2866) at java.lang.Class.getMethod(Class.java:1676) at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486) Caused by: java.lang.ClassNotFoundException: weblogic.xml.crypto.wss.provider.CredentialProvider at java.net.URLClassLoader$1.run(URLClassLoader.java:359) at java.net.URLClassLoader$1.run(URLClassLoader.java:348) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:347) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ... 6 more

如果weblogic.xml.crypto.wss.provider.CredentialProvider实际上没有被找到,那么它在编译时也会失败,但是它没有

有什么问题吗?这是配置错误吗? 谢谢

@duffymo是对的。在安装shade插件并检查生成的包之后,我发现缺少依赖项

这是我的pom。从maven中提取的xml文件的依赖项。神谕com

<dependencies>

<dependency>
    <groupId>com.oracle.weblogic</groupId>
    <artifactId>weblogic-server-pom</artifactId>
    <version>LATEST</version>
    <type>pom</type>
    <scope>provided</scope> </dependency>

<dependency>
    <groupId>com.oracle.weblogic</groupId>
    <artifactId>wlsafclient</artifactId>
    <version>LATEST</version> </dependency>

<dependency>
    <groupId>com.oracle.weblogic</groupId>
    <artifactId>wlclient</artifactId>
    <version>LATEST</version> </dependency>

<dependency>
    <groupId>com.oracle.weblogic</groupId>
    <artifactId>wljmsclient</artifactId>
    <version>LATEST</version> </dependency>

</dependencies>

共 (0) 个答案