java - 我可以选择我在 Maven 依赖项中使用的唯一包来在 Eclipse 中导出可运行的 jar 吗?

标签 java eclipse maven ffmpeg pom.xml

我在 Java 应用程序中使用 Javacpp。在我的pom里面我有:

org.bytedeco
javacv平台
1.5.1

我在项目中唯一的导入与 ffmpeg 和 opencv 有关。但是,当我创建可运行的 Jar 时,它很大(数百兆字节),因为它有很多来自 javacv-platform 附带的其他包的 jar,它们对我来说毫无用处(我可以在 maven 依赖项中看到它们)。无论如何要删除我从未在此依赖项中使用过的软件包?因为我可以在我创建的可运行 jar 中看到所有这些。

最佳答案

是的,您可以排除不需要的内容,如下所示:

<dependency>
        <groupId>org.bytedeco</groupId>
        <artifactId>javacv-platform</artifactId>
        <version>${javacv-platform.version}</version>
        <exclusions>
            <exclusion>
                <groupId>javacv-platform</groupId>
                <artifactId>flycapture-platform</artifactId>
            </exclusion>
            <exclusion>
                <groupId>javacv-platform</groupId>
                <artifactId>libfreenect-platform</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
但实际上“javacv-platform”的 JAR 中没有代码,因此您可能只想包含您想要的内容(我假设只是“javacv”、“opencv-platform”和“ffmpeg-platform”)。

关于java - 我可以选择我在 Maven 依赖项中使用的唯一包来在 Eclipse 中导出可运行的 jar 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66147604/

相关文章:

java - 使用 Maven 和 pom 下载源 jar

java - 在类之间传递数组值

java - 错误 : 'Premature end of file.'

java - Eclipse:Java 的全文自动完成?

android - 如何在使用特定版本的功能时使我的项目与不同的 sdk 版本兼容

java - Sonar 提示记录并重新抛出异常

java - 使用 Stream 从二维整数数组中查找奇数

java - JT400 - 获取命令生成的假脱机文件

java - 将 Play Framework 2 输出重定向到 Eclipse 控制台

git - 使用 mvn release :prepare, 是否可以指示 Maven 在提交命令的子模块 pom 位置中使用正斜杠?