1

我正在使用 JSP 开始 Web 开发,并且我一直在开发我的应用程序或一段时间。我有一个自定义日志记录类,在我的个人库中。我不想jar每次进行更改时都将库导出到文件中,因此我通过右键单击我的 Web 应用程序将我的 Eclipse 库添加到构建路径中,转到Build Path --> Projects --> Add --> (library name).

当我将 Eclipse 导入到我的 Java 类中时,它不会出现错误。虽然,我从我的应用程序的一个类(已导入我的自定义日志记录类)中调用了一个方法,但它会抛出一个ClassNotFoundException.

我在网上看过,并且(如果我错了,请纠正我)看起来解决这个问题的方法是将我的库导出到一个jar文件并将其放在/(project)/WebContent/WEB-INF/lib文件夹下,然后将其放入构建路径中。

我不想这样做,因为我经常对我的库进行很多更改。那么如何让 Tomcat 识别我的库在构建路径中而不导出它呢?

提前致谢。

4

1 回答 1

2

我通常尽量不回答一个建议你做完全不同的事情的问题,但在这种情况下,我认为这是有道理的。

所以,首先..记录是一个“已解决的问题”。这正是大多数人不应该重新发明的那种轮子。在 LogBack 和 SLF4J 上记录日志。如果你有一些非常特殊的情况,你应该做的最多的就是实现一个新的 Appender。

现在,对于更一般的问题。我经常向苦苦挣扎的开发人员提出的建议是消除他们的项目对任何特定 IDE 的依赖。如果您的项目被配置为可以从命令行构建、调试和打包,那么您将拥有更轻松的时间。然后你可以继续使用你的 IDE——只是不要让你的项目依赖它。

有很多方法可以做到这一点,但一种流行的方法相当好,并且与 Eclipse 和许多其他 IDE 集成,是 Maven。

如果您的实用程序库和依赖它的项目都是使用 Maven 构建的,那么您可以简单地声明(在您项目的 Maven 配置中)它依赖于您的实用程序库。

然后,您可以在实用程序库的项目中简单地执行“mvn install”,您的依赖项目将获取更改。

一旦你完成了所有这些工作,你就可以将 Maven 项目导入 Eclipse,它也将在那里工作。

于 2012-09-22T01:31:20.213 回答