Tag: classnotfoundexception

加载JDBC驱动程序中的classNotFoundException

我是java的新手,我正在Netbeans 6.9.1 IDE上开发Java EE应用程序。 我必须将我的Java应用程序与SQL Server 2005连接。 为此,我已经下载了sqljdbc.jar文件并将其放入我的系统上的C:\Program Files (x86)\Microsoft SQL Server\JDBC Drver\lib并在命令提示符下设置了类路径,就像这样 set classpath=.;C:\Program Files (x86)\Microsoft SQL Server\JDBC Drver\lib\sqljdbc.jar 并通过右键单击主项目并选择其属性选择库,在IDE中设置类路径。 然后在编译选项卡中添加了一个sqljdbc.jar ,但是当我执行这段代码时 import java.sql.*; /** * * @author abc */ public class DBConnection { public Connection dbConnect(String db_connect_string) { try { Class.forName( “com.microsoft.jdbc.sqlserver.SQLServerDriver”); Connection conn = DriverManager.getConnection(db_connect_string); System.out.println(“connected”); return conn; } catch (Exception e) […]

Tomcat为其他开放日食项目中的类抛出ClassNotFoundexception

我有一个eclipse项目结构,看起来像这样: eclipse project a project b 所有这些项目都是Maven项目。 项目B是Eclipse WTP项目,包含项目A作为依赖项。 我正在使用m2eclipse插件。 当我将Project B部署到Tomcat(所有这些都来自Eclipse中)时,它总是抛出错误,说它无法从Project A中找到类。我可以解决这个问题的唯一方法是关闭 Eclipse中的Project A并执行mvn install命令,所以在这一点上,项目A被视为任何其他依赖项。 我希望不必再次重新打开,然后每当我对其进行更改时关闭项目A(这在现阶段经常发生)。 我已经尝试将Project A添加到Project B的Build Path中,但是这似乎并没有成功。 同样,它只有在我在eclipse中关闭项目时才有效,所以它被视为普通的maven依赖。 仅供参考我正在使用Helios版Eclipse。 项目B是一个Spring项目,因此当它导入所有bean等时,Tomcat自然会崩溃。 有没有人有什么建议? 非常感谢。

java.lang.ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver:我加载了正确的驱动程序吗?

当我运行以下代码片段连接到数据源以通过查询获取数据时: try { String driver = “com.microsoft.jdbc.sqlserver.SQLServerDriver”; Class.forName(driver); String Url = “jdbc:sqlserver://localhost:1433;databaseName=movies”; Connection connection = DriverManager.getConnection(Url,”sa”, “xxxxxxx); // Context initContext = new InitialContext(); // Context envContext = (Context)initContext.lookup(“java:comp/env”); // DataSource ds = (DataSource)envContext.lookup(“”); // Connection connection = ds.getConnection(); String query_name = “select name from list where name='” + data + “‘”; 显示此exception跟踪: java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver at […]

ProGuard打破了JavaFX应用程序

我正在尝试模糊我的JavaFX应用程序,但它失败了。 生成的结果不起作用,我不明白为什么。 生成的jar只是失败,因为fxml文件不能再加载所有导入(ClassNotFoundException)。 部署工作流程: 构建可运行的jar(在IntelliJ knwon中作为工件) 使用ProGuard混淆该jar 修复ProGuard无法完成的jar中的一些问题 1)最小的示例应用程序 示例应用程序’GuardTest’是一个IntelliJ项目,由3个类组成。 sample.Main:包含应用程序入口点并加载GUI fxml文件’sample.fxml’ sample.Controller:’sample.fxml’的控制器类 controls.CustomControl:一个从HBoxinheritance的简单javafx控件。 这在’sample.fxml’中使用 ‘sample.fxml’的内容: 2)混淆 现在我使用ProGuard生成从上面的项目生成的jar文件。 我使用以下设置: -target 8 -injars ./out/artifacts/JavaFXApp/JavaFXApp.jar -outjars ./out/obfuscated/Obfuscated.jar -ignorewarnings -printmapping ./out/obfuscated/proguard.map -dontusemixedcaseclassnames -dontshrink -dontoptimize -dontskipnonpubliclibraryclasses -dontskipnonpubliclibraryclassmembers #-flattenpackagehierarchy -repackageclasses ‘p’ -allowaccessmodification -libraryjars “/lib/rt.jar” -libraryjars “/lib/javaws.jar” -libraryjars “/lib/ext/jfxrt.jar” -adaptresourcefilecontents **.fxml,**.properties,META-INF/MANIFEST.MF,images/*.jar,publicCerts.store,production.version -keepattributes javafx.fxml.FXML,Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,LocalVariable*Table,*Annotation*,Synthetic,EnclosingMethod -keepclassmembers class * { @javafx.fxml.FXML *; } -keepclassmembernames […]

启动java.util.concurrent.ExecutionException期间子容器失败

我试图创建/运行一个基本的JSP并遇到以下错误。 我看到其他人也有类似的问题,但是,我还没有找到(或正确实施)手头问题的解决方案。 任何帮助,将不胜感激! SEVERE: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/SimpleServletProject]] at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:816) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1575) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1565) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/SimpleServletProject]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) … 6 more Caused by: java.lang.NoClassDefFoundError: […]

ClassNotFoundException oracle.jdbc.driver.OracleDriver仅在servlet中使用Eclipse

下面的代码失败了: Class.forName(“oracle.jdbc.driver.OracleDriver”); 有错误: java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver 两个println的打印: Wed_Jun_22_11:18:51_PDT_2005 false 这让我觉得这个类存在并且可以找到。 此完全相同的类也适用于非servlet应用程序。 我已多次重启所有内容并多次重新生成应用程序/ servlet。 所有值都经过硬编码,使其简单易行。 private static Connection getDBConnection() throws Exception { System.out.println(oracle.jdbc.driver.OracleDriver.BUILD_DATE); System.out.println(Class.class.desiredAssertionStatus()); //load the driver Class.forName(“oracle.jdbc.driver.OracleDriver”); return DriverManager.getConnection(“jdbc:oracle:thin:@localhost:1521:orcl”, “SYSTEM”, “pass”); } 失败的完整servlet: package servletClass_3; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class OneMoreBookStore […]

如何设置rmiregistry使用的类路径?

我正在尝试制作Java RMI客户端/服务器应用程序。 我在启动应用程序的服务器端时遇到问题,因为当我尝试启动应用程序的服务器端时,它在调用Registry.bind()方法期间一直运行到ClassNotFoundException 。 我从这里的简单教程开始: http : //docs.oracle.com/javase/1.5.0/docs/guide/rmi/hello/hello-world.html 。 按照这些说明操作后,它最初抛出一个ClassNotFoundException,抱怨它找不到“example.hello.Hello”。 我能够通过从教程中的destDir目录启动rmiregistry来解决这个问题,因为rmiregistry显然使用它的初始起始目录作为其类路径的一部分。 之后我开始使用我的其他测试应用程序,直到我开始在服务器类中使用第三方jar文件之前我一直很好。 现在,如果我的服务器类引用任何jar文件中的任何内容,则Registry.bind()会抛出ClassNotFoundException,因为rmiregistry应用程序不知道这些jar文件。 据我所知,rmiregistry不接受任何类型的路径启动arg,所以我想知道如何告诉它我想要它承认什么类路径。 根据这里的教程: http : //docs.oracle.com/javase/tutorial/rmi/running.html ,“你必须确保你将运行rmiregistry的shell或窗口没有设置CLASSPATH环境变量或有一个CLASSPATH环境变量,它不包含你想要下载到远程对象客户端的任何类的路径。“ 这听起来与我需要的相反……或者我读错了吗? 有没有人有任何成功启动使用第三方jar的RMI客户端/服务器(在我的情况下,commons-io,commons-logging和rmiio)? 这是在Windows上,顺便说一下。 更新我找到了解决方法。 请参阅下面的答案。

java.lang.ClassNotFoundException:org.apache.commons.fileupload.FileItemFactory

我试图通过apache tomcat 8.0.14编译UploadServlet servlet。 我的web.xml很好, UploadServlet.java已经正确编译但是当尝试运行时我得到以下错误 错误 HTTP Status 500 – Error instantiating servlet class UploadServlet exception javax.servlet.ServletException: Error instantiating servlet class UploadServlet root cause java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory root cause java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory UploadServlet.java import java.io.*; import java.util.*; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadException; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; import […]

readobject方法抛出ClassNotFoundException

我正在尝试使用Java并希望使用Java的客户端/服务器进行测试,以使客户端将自定义类(Message)的简单对象发送到服务器。 问题是我一直在服务器端获得ClassNotFoundException。 我认为其余的代码似乎没问题,因为像String这样的其他对象可以毫无问题地通过。 我在客户端和服务器的不同位置有两个不同的netbeans项目。 他们每个人都有自己的Message类副本。 Message类实现Serializable。 在客户端,我尝试通过发送一个Message对象。 在服务器端,在调用readObject方法时,它似乎是从客户端的包而不是它自己的包中找到Message类。 printStackTrace显示:服务器端的“java.lang.ClassNotFoundException:client.Message” 我甚至没有尝试过投射或存储收到的对象。 有什么东西我遗漏了吗?

来自远程目录的Java Class.forName()

我目前正在使用Class.forName()加载Java类来加载它。 clazz = Class.forName(“interfaces.MyClass”); 但是现在我想从不同的目录加载类,我试图设置classpath clazz = Class.forName(“-cp \”C:/dir\” distantinterfaces.DistantClass”); 没有成功和ClassNotFoundException 。 远程class级的完整路径是: C:/dir/distantinterfaces/DistantClass.class