1

我正在尝试阅读来自 Tomcat 6.0 的邮件。每当我将 MailReader 类的字节码和源代码放在同一个文件夹中(并放置 main 方法)时,我可以编译并运行该类并从命令提示符读取邮件,但是当我将该类放入文件夹 WEB- tomcat 的 INF/类(通过删除 main 方法),我得到了很大的异常说:

找不到主类类:Message Reader。程序将存在

为什么呢?我已经将jar文件activation.jar和mail.jar放在Tomcat的lib文件夹中,我正在尝试从批处理文件中运行上面的类。

4

2 回答 2

1

你有同一个 jar 的 2 个版本。你需要把它放在一个地方。您可以查看此答案以进行解释,但这通常在 Tomcat 上经常发生,尤其是对于 xml 解析器和 JDBC 驱动程序之类的东西。所以检查 WEB-INF/lib 和 Tomcat/lib 是否有冲突

于 2009-10-22T22:42:38.810 回答
0

我不清楚你在做什么。您说您正在尝试从 Tomcat 读取邮件,但又说您正在尝试从批处理文件运行。我猜(如果我错了,请纠正我)你的类在你刚刚在批处理文件中指向的 Tomcat webapp/WEB-INF/classes 目录中。在这种情况下,Tomcat 的行为不会进入它,它只是一个目录。

另一个令人困惑的事情是您说“删除主要方法”。如果您尝试使用“java abcMyClass”在命令行上运行程序,那么 MyClass 类需要正确定义的 main 方法才能运行。为什么要放入和删除主要方法?

于 2009-10-23T14:01:55.987 回答