我需要做一个Java网络项目。我将使用Eclipse。
我想过使用Spring MVC。据我所知,这需要我在一个“干净”的Java web项目中添加一些“额外”的东西。我不介意--问题是--其中一个项目要求是--我将能够将项目发送给其他人--没有任何额外的安装和/或配置--他将能够编译该项目。
使用Spring MVC可以做到这一点吗?Spring MVC框架只是一个类似于项目的"JAR“吗?因此,项目可以毫无问题地共享吗?
谢谢。
发布于 2013-06-05 05:42:27
简短的回答是:是的,你是对的。
要在Java web项目中使用Spring,通常需要添加两项内容:
/WEB-INF/lib中,与其他JAR文件一样)。顺便说一下,它不是单个JAR文件,而是多个JAR文件。这就是它的全部。
发布于 2013-06-05 05:41:46
Spring与“共享项目”没有任何关系。
要与其他人“共享”该项目,您可以将其放在您选择的SCM上,您的合作者将能够获得代码并对其进行操作。
构建项目是一个不同的方面。要正确编译项目,您必须确保所有的类和/或jars在类路径中都可见(如果您想要执行代码,还要在运行时中可见)。Spring是由一堆jars组成的,根据您使用的框架的哪些类,它们必须位于类路径中(例如,将它们放在/WEB-INF/lib目录中)。您也可以对它们进行版本化,或者只对配置进行版本化(例如,我正在考虑Maven,它将负责解决依赖关系)。
难题的另一部分是让所有这些在您的IDE中工作。这是一个品味问题。我不喜欢版本化特定于ide的文件(在Eclipse、.settings和.project文件/文件夹的情况下)。您可以这样做,确保您不会在任何地方使用绝对路径,并且从技术上讲,您将能够从另一台计算机导入项目而不会出现问题。
发布于 2013-06-05 05:45:49
是。
如果其他人没有额外安装和配置任何东西,即没有构建工具,您需要将所有需要的Spring和其他Jar放到一个文件夹中,通常称为"lib“,并告诉他将它们添加到他的编译过程中。如果他只使用JDK,他将得到一个巨大的命令行。使用Maven或Ant+Ivy之类的构建工具进行构建和依赖项解析要好得多。但根据你的问题,这将是一个“额外的安装”。
如果他像您一样安装了Eclipse,而您使用Eclipse internal进行构建:
只要您没有在构建路径中故意设置,导出的项目就不应该有任何绝对路径。
这是可行的,但并不完全是最佳实践。安装像Maven这样的构建工具绝对值得花时间,并且在任何情况下都应该是首选。这将为你节省大量的时间和精力。
https://stackoverflow.com/questions/16927728
复制相似问题