【问题标题】:Wildfly Swarm + Maven filling up temp directoryWildfly Swarm + Maven 填充临时目录
【发布时间】:2017-08-25 11:25:10
【问题描述】:

我最近开始尝试将应用程序转换为使用 wildfly swarm,我在 Windows 上使用 maven,并且正在使用 wildfly swarm maven 插件来:创建 uber jar,启动它以进行集成测试并停止在构建结束时。

这是来自 pom 的 sn-p:

<plugin>
    <groupId>org.wildfly.swarm</groupId>
    <artifactId>wildfly-swarm-plugin</artifactId>
    <version>${version.wildfly.swarm}</version>
    <configuration>
        <useUberJar>true</useUberJar>
        <debug>8000</debug>
    </configuration>
    <executions>
        <execution>
            <id>swarm-package</id>
            <phase>package</phase>
            <goals>
                <goal>package</goal>
            </goals>
        </execution>
        <execution>
            <id>swarm-start</id>
            <phase>pre-integration-test</phase>
            <goals>
                <goal>start</goal>
            </goals>
        </execution>
        <execution>
            <id>swarm-stop</id>
            <phase>post-integration-test</phase>
            <goals>
                <goal>stop</goal>
            </goals>
        </execution>
    </executions>
</plugin>

我还使用命令行中的mvn wildfly-swarm:run 来启动应用程序,这样我就可以在 maven 构建之外进行一些手动测试。

每次我运行构建时,C:\Users\myusername\AppData\Local\Temp 都会充满大量似乎永远不会被删除的数据。我不得不每隔几次构建手动清除我的 Temp 目录,因为它占用了我所有的磁盘空间。

我有什么遗漏的吗?是否可以将所有这些临时数据放入项目target 目录中,以便使用mvn clean 处理?

【问题讨论】:

  • 你的version.wildfly.swarm 是什么?
  • 我正在使用2017.8.1

标签: java windows maven wildfly wildfly-swarm


【解决方案1】:

论坛here 报告了类似问题。

在您的具体情况下,问题可能是由手动干预集群进程的启动和停止引起的。

来自链接来源:

现在,我唯一能想到的是,出于某种原因,JVM 以不干净的方式退出,这就是为什么删除钩子不是 正在执行。

您可能希望使用

执行和测试
mvn wildfly-swarm:start 

一旦完成测试

mvn wildfly-swarm:stop

这将确保适当的清理。

注意:这将不同于 packageinstall 命令,并且不会遵循您另外指定的插件执行。

【讨论】:

  • 我之前尝试过在命令行中使用mvn wildfly-swarm:stop,但它不受支持,它会产生错误wildfly-swarm:stop is not usable from the CLI,这就是我在POM中添加执行的原因。
  • @MartinCassidy 出于某种原因,这似乎是故意的。 implementationconfirmation 链接到它。
  • 我怀疑这是出于实际原因,它需要是启动 swarm 的同一 maven 进程的一部分,以便停止命令知道实际停止哪个进程。我实际上已经尝试了产生同样问题的java -jar 选项。我已经为它提出了一张票issues.jboss.org/browse/SWARM-1530 同时,我在 maven swarm 插件配置中添加了-Djava.io.tmpdir 作为jvmArgument,将其设置为我的/target 目录,以便mvn clean 现在正在使用照顾事情。
猜你喜欢
  • 2017-05-13
  • 1970-01-01
  • 1970-01-01
  • 2013-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多