首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Netbeans / Maven中的远程调试单元测试

Netbeans / Maven中的远程调试单元测试
EN

Stack Overflow用户
提问于 2016-05-29 16:32:06
回答 2查看 654关注 0票数 1

我想使用Netbeans在Maven项目中的远程机器上自动启动和调试单元测试。所有IDE特性都应该工作,如调试、输出窗口等。进程必须完全自动化,只需单击一次"Debug焦点测试方法“。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-05-29 19:58:08

解决方案是用自定义脚本替换mvn命令,该脚本将执行rsyncssh。通过这两种工具的魔力,它的工作真的很好。而且,它应该可以移植到其他Maven IDE。当前的指南是针对bash的,但是在powershellgroovy甚至cmd中也可以实现相同的想法。(我试着使用Nashorn,但是在正确保存所有参数的同时执行其他命令的方式似乎被打破了。)

  • 在Netbeans目录/usr/local/netbeans-8.1/java/maven/bin/中,重命名mvn脚本:
    • cd /usr/local/netbeans-8.1/java/maven/bin/
    • sudo mv mvn mvn.orig

  • 创建新的mvn脚本。 #!/bin/bash if -z "$REMOTE“;SCRIPTDIR=$(大号"$0") "$SCRIPTDIR/mvn.orig”"$@“,如果-z "$REMOTE_BASE_DIR”;然后回显“REMOTE_BASE_DIR :请将环境变量REMOTE_BASE_DIR设置为包含项目目录”exit fi PROJECT_DIR=$(basename "$(pwd)")的文件夹的REMOTE_BASE_DIR ARGS=,用于"$@“do ARGS="$ARGS \\”$var\\“do echo”项目目录.“(设置-x;rsync -aczhW -进度-删除-排除'.git‘-排除’$REMOTE:\‘$RSYNC_OPTS ./“$REMOTE:\”$REMOTE_PROJECT_DIR\)回显“执行maven.”如果"$REMOTE_PORT“= '${jpda.address}‘;则(set -x;ssh ${REMOTE} "cd \”$REMOTE_PROJECT_DIR\;mvn $ARGS")其他(set -x;ssh -R $REMOTE_PORT:localhost:$REMOTE_PORT ${REMOTE} "cd \“$REMOTE_PROJECT_DIR\;mvn $ARGS")
  • 配置远程计算机:
    • 要么安装mvn,要么安装Netbeans并将其mvn放在路径上。我选择了后者,但两者都应该可以。
    • 配置ssh。我不会在这里描述怎么做的。确保AllowTcpForwarding设置为yes/etc/ssh/sshd_config中的remote

  • 创建新的Netbeans配置,将所有maven操作(包括清洁和构建)转发到远程计算机:
代码语言:javascript
复制
- Go into Project's properties
- Create new Configuration
- In "Set properties" add:

Env.REMOTE_BASE_DIR= Env.REMOTE= Env.REMOTE_PORT=${jpda.address} Env.RSYNC_OPTS=

代码语言:javascript
复制
- To use, select the new configuration in the drop-down menu in the toolbar, and invoke any maven goal as usual.
- I'm still looking for a way to set up this configuration globally. If you know how to do this, please tell me!

  • 或者,创建具有相同属性集的自定义操作。
  • 我应该提到,由于JVM中内置的远程调试功能、Maven的版本/依赖跟踪以及Netbeans中出色的Maven集成,调试体验运行得很好。我非常喜欢您能够轻松地进入其他项目的代码(并且它可以解决特定的版本)。
票数 0
EN

Stack Overflow用户

发布于 2016-05-30 08:08:23

尽到火/故障安全插件支持开箱即用的远程调试:http://maven.apache.org/surefire/maven-surefire-plugin/examples/debugging.html

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37512315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档