java - 如何使用 Maven 获取所有必需的 Apache POI 库?

标签 java maven jar apache-poi

我已经安装了 maven 并使用这个命令创建了一个项目:

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

结果是在 my-app 文件夹中创建了 2 个文件夹和 1 个文件:src、target 和 pom.xml。

然后我修改 pom.xml 以获得所有必需的 apache POI jar。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.my-app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-app</name>
  <url>http://maven.apache.org</url>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

    <!-- This is what I added -->
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.10-FINAL</version>
    </dependency>
  </dependencies>
</project>

然后我运行:

mvn package

虽然我收到消息“BUILD SUCCESS”,但没有 jars 下载到项目文件夹中。

最佳答案

您所做的是正确的。但是,poi jar 不会下载到您的项目文件夹,而是下载到您本地的 Maven 存储库。这正是 Maven 应该做的,这样您就不必自己管理许多库/jar,也不必把一切搞得一团糟。如果您搜索本地 Maven 存储库,您应该会在那里找到它。

我还建议您阅读有关 Maven 如何使用外部依赖项的内容,此处对此进行了全部解释: http://maven.apache.org/guides/getting-started/index.html#How_do_I_use_external_dependencies

如果您想将所有依赖的 jar 打包到一个大 jar 中,请看这里: How can I create an executable JAR with dependencies using Maven?

关于java - 如何使用 Maven 获取所有必需的 Apache POI 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25305883/

相关文章:

java - 如何在 Android Studio 中导入并使用 txt 文件?

java - 从 Java 启动且代码为 `Runtime.getRuntime().exec` 的进程无法访问文件系统位置

java - 将行号添加到已编译的类

java - 如何将 "jar"转换为 Linux 可执行文件?

java.lang.NoClassDefFoundError : java. awt.Point

java - 设计股票应用程序需要一些建议

Java xml-java 绑定(bind) @XmlType.propOrder

java - 修改xml中特定标签的值

java - 在 Maven 上按顺序强制进行集成参数化测试

java - JPA EntityListener 和持久性存档