麻烦整合BouncyCastle Jar

好的,我现在要说我对Java知之甚少。 我得到了Bouncy Castle Jar,并告诉我将包含我需要做的任务。 Jar文件是bcprov-jdk15on-147.jar 。 我也是在我学校维护的Unix机器上做这个,所以我不能进去玩所有的Java文件。

当我使用Javac编译我的类(特别是我使用命令javac -classpath bcprov-jdk15on-147.jar encrypt.java )时,它编译时没有错误,但是当我以后使用命令java encrypt运行程序时,我得到了此错误消息:

 Exception in thread "main" java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider Caused by: java.lang.ClassNotFoundException: org.bouncycastle.jce.provider.BouncyCastleProvider at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) 

我的Jar文件位于我的主文件夹中,包含我的所有其他文件,以防万一它必须去特别的地方,这就是我没有做的事情。

当我做java -classpath bcprov-jdk15on-147.jar encrypt这是我得到的错误:

  Exception in thread "main" java.lang.NoClassDefFoundError: encrypt Caused by: java.lang.ClassNotFoundException: encrypt at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) 

为什么我在运行已编译的程序时遇到问题?

输入以运行程序:

 java -classpath bcprov-jdk15on-147.jar:. encrypt 

这是因为您的程序还需要在运行时将其用作类路径的一部分的库,而不仅仅是在编译时。