0

如何使用 capsule.jar 从 seedstack 中的命令行运行作业?有什么方法可以在 jar 中添加所有依赖项,以避免设置类路径?有样品吗?

4

3 回答 3

1

SeedStack Capsule集成的目的是构建一个可执行的 über-JAR,其中包含运行应用程序所需的所有依赖项。在这种情况下,您不需要配置类路径。

要构建胶囊,您必须使用packageSeedStack 插件的目标,使用pom.xml模块中的此插件部分:

<plugin>
    <groupId>org.seedstack</groupId>
    <artifactId>seedstack-maven-plugin</artifactId>
    <version>2.7.1</version>
    <executions>
        <execution>
            <id>build-capsule</id>
            <goals>
                <goal>package</goal>
            </goals>
        </execution>
    </executions>
</plugin>

target这将在模块目录中构建胶囊 JAR 。这个胶囊 JAR 然后可以作为标准的可执行 JAR 运行:

java [jvm-args] -jar capsule.jar [app-args]

在您的情况下,您将使用以下命令运行批处理作业:

java -jar capsule.jar run-job --job someJob

相关文档可在此处获得:

于 2018-07-17T09:16:59.927 回答
0

我创建了以 pacakge 作为胶囊的示例 sedstack cli 项目,并使用以下命令执行了相同的操作:

java -jar my-cli-project-capsule.jar 示例

它工作得很好。

我在以下位置分享了胶囊: https ://github.com/smohane/sudeshrepo/tree/seed-samples

于 2018-07-25T21:11:20.197 回答
0

有什么方法可以在 jar 中添加所有依赖项,以避免设置类路径?

您可以使用以下方法创建一个 uber jar:

有样品吗?

您可以在 Spring Batch 入门示例中找到示例:https ://spring.io/guides/gs/batch-processing/ (请参阅“构建可执行 JAR”部分)

于 2018-07-16T08:01:59.713 回答