如何配置Maven以导出lib文件夹中的依赖关系?

时间:2018-12-17 04:14:14

标签: amazon-web-services maven jar maven-3 maven-assembly-plugin

我正在尝试遵循AWS Lambda建议here,他们说:

  

通过将依赖项.jar文件放在单独的/ lib目录中,减少Lambda解压缩用Java编写的部署程序包所需的时间。这比将所有函数的代码放入包含大量.class文件的单个jar中要快。

我可能是错的,但是据我了解,AWS建议这样的zip存档结构:

my-code.jar
lib/my-dependency.jar

如果这是它们的意思,我将无法实现,我试图将Maven程序集插件配置为:

<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
    <id>distribution</id>
    <formats>
        <format>zip</format>
    </formats>

    <includeBaseDirectory>false</includeBaseDirectory>

   <fileSets>
       <fileSet>
           <directory>${project.basedir}\src\main\java</directory>
           <outputDirectory>\</outputDirectory>
       </fileSet>
   </fileSets>

    <dependencySets>
        <dependencySet>
            <outputDirectory>lib</outputDirectory>
        </dependencySet>
    </dependencySets>
</assembly>

我得到的是:

lib/my-code.jar
lib/my-dependency.jar

因此,这引出了两个问题:

1-我是否正确理解了AWS建议?我对Maven和整个Java构建过程还是陌生的。

2-如果我对它的理解正确,那我该如何实现呢?

0 个答案:

没有答案