- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章maven 测试写入JRE参数实例详解由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
maven 测试写入JRE参数实例详解 。
项目在测试时碰到一个问题,就是JVM加载参数的问题.
web项目本身在注入配置信息的时候,读取的是本地的配置文件,但是配置文件的位置是卸载tomcat 里面配置的JAVA_OPTS里面的.
问题出现了:
JAVA_OPTS将变量写入了JRE,但是在执行maven test的时候,是没有写入JRE参数的,所以在进行诸如service等涉及到数据库的测试的时候,将无法正确加载数据库的配置,导致无法进行数据库测试.
解决方案:
使用configuration来注入参数到JRE当中,这样就可以将参数写入JRE了,然后即可读取本地的配置文件 。
pom代码如下:
1
2
3
4
5
6
7
8
|
<
plugin
>
<
groupId
>org.apache.maven.plugins</
groupId
>
<
artifactId
>maven-surefire-plugin</
artifactId
>
<
configuration
>
<
forkMode
>pertest</
forkMode
>
<
argLine
>${maven.test.jvmargs}</
argLine
>
</
configuration
>
</
plugin
>
|
maven plugin 。
可以使用该plugin,maven本身不提供测试的,使用的是该插件,通过注入argLine可以方便我们注入一些JVM的参数 比如我在进行spring测试的时候,因为将一些敏感信息配置到配置文件中,所以文件本身是不在项目中的,目前只能通过注入jvm参数,然后就可以通过System.getProperty来获取到对应的参数 。
至于forkMode是测试指定的参数.
forkMode 可设置值有 “never”, “once”, “always” 和 “pertest”.
。
参数 | 解释 |
---|---|
pretest | 每一个测试创建一个新进程,为每个测试创建新的JVM是单独测试的最彻底方式,但也是最慢的,不适合hudson上持续回归 |
once | 在一个进程中进行所有测试。once为默认设置,在Hudson上持续回归时建议使用默认设置。 |
always | 在一个进程中并行的运行脚本,Junit4.7以上版本才可以使用,surefire的版本要在2.6以上提供这个功能,其中threadCount执行时,指定可分配的线程数量。只和参数parallel配合使用有效。默认:5。 |
。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持! 。
原文链接:http://blog.csdn.net/ethanwhite/article/details/50498550 。
最后此篇关于maven 测试写入JRE参数实例详解的文章就讲到这里了,如果你想了解更多关于maven 测试写入JRE参数实例详解的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在尝试运行 servlet,因此我想知道要下载哪一个客户端 JRE 或服务器 JRE,因为 Oracle 网站上有两个可用的 JRE?我安装了 JDK 7。 最佳答案 服务器和客户端虚拟机之间的主
我无法理解 Java JRE 的一些基础知识。 我需要在嵌入式系统中运行 Java 代码,为此我需要在 Linux 内核中安装一个最小的 Java 运行时环境,也就是说,执行 Java 二进制文件所需
我正在编写 Java 小程序,想知道将其包含在网页中的最佳方式。 我希望它能提示用户安装 JRE(如果她还没有的话)。此功能应该(理想情况下)在运行 Java 的任何操作系统上跨浏览器工作。另一个要求
我希望使用 JRE 版本 1.6.0_14 加载我的小程序。我已经安装了更新 14、17、24 和 35。我正在使用 标记为 classid加载带有更新 14 的版本。 在这种情况下,小程序会加载更新
我正在配置构建路径,以便我的 Eclipse 项目之一使用与工作区默认值不同的 JRE。在 JRE System Library 窗口中,我看到了 3 个选项... 我知道我不想使用默认工作区,但执行
小程序在浏览器的 JRE 中运行。这是否意味着您不必在计算机上安装 JRE 即可运行小程序? 最佳答案 “浏览器的 JVM”是您安装在计算机上的 JRE。浏览器通常不会自带,它们只会使用您已经安装在系
JDK 中包含的 JRE(位于 jre 文件夹内)和独立的 JRE 有什么区别?有吗? 最佳答案 “独立 JRE”(有时也称为“公共(public) JRE”)通常不包含 HotSpot 的服务器版本
已结束。此问题不符合 Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 a specific programming problem, a software a
我进入 Eclipse 的首选项,将默认 JRE 更改为 Java SE 8,并将 Eclipse 的编译器设置更改为 1.8 JDK 合规性。我什至删除了其他 JRE。 但是,当我导入项目时,正如您
最近我将我的 Linux 机器中的 JRE 从 1.7 + JIT 升级到没有 JIT 的 1.8,并注意到性能大幅下降,即时编译 JVM 是否比带解释器的 JVM 快得多?谢谢, 最佳答案 JIT
我开发了一个 e4 应用程序,可以在 mac os x 和 windows 中运行 我正在使用 mac os x jre 中存在的一些类,但 Windows jre 中缺少它们 当我们从 window
我有一个项目 1 需要在 1.7 上运行,该项目依赖于另一个在 1.8 上构建的项目 2。 我试图在项目 1 内调用项目 2 中的类,但出现一个已知错误,该错误已在 1.8 中修复。如果我在 JRE
我正在编写一个 Java Swing 应用程序。我从 Oracle 网站下载了适用于 Linux 平台的 JRE,并将这个 JRE 捆绑到了我的应用程序中。 我已经给出了一个启动器脚本,其中我引用了捆
我正在通过 java 1.6 u_17 进行编程,但我安装了 JRE 版本 6 和 JRE 版本 7,那么如何从 JDK 1.6 运行我编译的程序以仅通过 JRE 6 运行? 默认情况下,它通过 JR
这个问题在这里已经有了答案: how to check jre version using java application (6 个答案) 关闭 7 年前。 我安装了多个 JRE(6、7、8,32
我已经在我的机器上安装了 Java 8 并用它启动了一个项目。但是,当我使用 @Override 注释时,代码带有红色下划线,并且出现错误 Syntax error, annotations are
我(作为一个非 Java 的人)对我的本地 JRE 10 安装需要更新感到困惑,但是在更新时,我得到了 JRE 8!这甚至在 https://java.com/en/download/more_inf
私有(private) jre 和公共(public) jre 有什么区别?有没有关于这个主题的官方论文? 我没有找到关于这个主题的任何问题。我也无法在周围找到令人满意的东西。 最佳答案 A JRE
Java JRE 混合代码安全性,从 JRE 1.6.0_19 及更高版本开始最初在 2010 年左右,使用 JDK/JRE 1.6.0_12 实现、构建和部署了一个主 jar Java Applet
我需要 JRE 来使用仅提供英文版本的 JRE 资源的翻译版本。 根据 ResourceBundle.java 文档,这很简单:添加具有正确语言环境后缀的本地化资源。例如,标准 XMLSchemaMe
我是一名优秀的程序员,十分优秀!