小编Der*_*rek的帖子

Java ProcessBuilder process.destroy()不会在winXP中杀死子进程

我有一个java应用程序,用于ProcessBuilder准备操作系统命令并给我一个Process对象.(实际的os命令是使用cygwin通过ssh进行rsync).

这在Windows中运行良好,但如果我想停止使用process.destroy()它的过程不会杀死子ssh和rsync进程.....我必须使用Windows任务管理器手动杀死它们..

我可以OutputStream在调用之前获取进程并以某种方式发送一个ctrl-c destroy();吗?

如果有人对解决方法有任何想法,那就太好了.感谢:D

java

9
推荐指数
1
解决办法
1万
查看次数

Grails配置文件:最佳实践

只是想知道在为grails应用程序添加配置键值对时的"最佳实践"是什么.

您是否应该添加到Config.groovy或创建新文件.

我尝试创建一个新的配置文件(Company.groovy),但无法从我的应用程序访问配置道具.然而,当我将属性粘贴到Config.groovy时,我确实可以访问它们....这样可以正常工作,但我不希望Config.groovy变得太大.另一个问题抬头了.在运行Integration测试时,我发现'test'env无法访问我的新配置属性(值为null).

我必须做一些根本错误的事情.任何意见,将不胜感激.

感谢:D

grails configuration-files

9
推荐指数
2
解决办法
1万
查看次数

grails单元测试中的@ExpectedException

有人在grails单元测试中使用过这个注释吗?似乎没有为我工作.谢谢.d

更新:我下面测试的最后一行确实抛出了预期的异常.但是测试失败了(这里的堆栈跟踪太大......).我正在使用grails 1.2并在eclipse的junit runner中运行测试.也许grails使用的是早期版本的junit而不是4?

/**
 * Get the EC by a manager of a different company. Should throw exception
 */
@ExpectedException(ServiceAuthorizationException.class)
void testGetEcByNonOwnerManagerOfDifferentCompany() {
    mockDomain(ExpenseClaim , [new ExpenseClaim(id:"1",narrative:"marksClaim", employee:userMark, company:dereksCompany)])      

    def authControl = mockFor(AuthenticateService)
    authControl.demand.userDomain(1..1)  {-> otherUserMgr }
    authControl.demand.ifAllGranted(1..1)  {String arg1 -> return "ROLE_COMPANYMANAGER".equals(arg1) } //returns true
    def testService = new ExpenseClaimService()
    testService.authenticateService = authControl.createMock()
    def thrown = false
    testService.getExpenseClaim("1")
}
Run Code Online (Sandbox Code Playgroud)

grails unit-testing expected-exception

6
推荐指数
1
解决办法
5369
查看次数