我的 pom.xml 文件有问题。我有一个使用 Spring MVC 制作的项目并使用此依赖项:
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>6.3.0</version>
</dependency>
该项目是在基于 64 位 Gnome Debian 的系统上开发的,并且工作正常,但昨天我试图在 32 位 Debian LXDE 笔记本电脑上从 Github 签出该项目,但我有 Maven 错误,Eclipse 一直说我缺少依赖项:
- 缺少工件 org.olap4j:olap4j:jar:0.9.7.309-JS-3
- 缺少工件 com.lowagie:itext:jar:2.1.7.js5
虽然我在两台机器上使用相同的软件版本(32 位和 64 位):
- 日食火星。
- apache-tomcat-8.0.33。
- jdk1.8.0_92
我找到的解决方案(在几乎杀死 maven 之后)是添加所需的额外 maven 依赖项。对我来说,这个解决方案没有多大意义,因为它只在 32 位机器上需要:
<!-- https://mvnrepository.com/artifact/com.lowagie/itext -->
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>2.1.7</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.olap4j/olap4j -->
<dependency>
<groupId>org.olap4j</groupId>
<artifactId>olap4j</artifactId>
<version>1.2.0</version>
</dependency>
经过研究,我发现 Jasperreports 6.3.0 已经在 jar 文件中包含了缺少的依赖项,这就是为什么在 64 位机器上唯一需要的依赖项是 jasperreports 6.3.0。
我的问题是:
- 考虑到软件工具版本相同,为什么我需要两个版本的 pom 文件:一个用于 32 位计算机,另一个用于 64 位计算机?
- 我怎样才能只有一个版本的 pom 文件在两个平台上都可以使用?
提前致谢!