2014-04-14 23 views
7

Tôi đang cố gắng chạy ứng dụng của mình bằng cách sử dụng tác vụ Gradex javaexec. Tuy nhiên, jvmargs và args không được truyền cho việc thực thi lệnh. Tại sao?Nhiệm vụ javaexec Gradle bỏ qua jvmargs

task runArgoDev(type: JavaExec) { 
    main = "org.app.ArgoDevRunner" 
    classpath = configurations.testRuntime 
    project.ext.jvmargs = ['-Xdock:name=Argo', '-Xmx512m', '-Dfile.encoding=UTF-8', '-Dapple.awt.textantialiasing=on', '-ea'] 
    project.ext.args = ['-initParameter', 'implicit-scrollpane-support=true'] 

}

Trả lời

7

Trên mã không có hiệu quả mong muốn vì nó đặt thuộc tính thêm vào đối tượng project, thay vì cấu hình nhiệm vụ. Chính xác là jvmArgs = ...args = .... (Cũng có thể bỏ qua =, [].)

+0

Cám ơn câu trả lời của bạn, javaexec hiện bằng cách sử dụng jvmargs và args – user3531297

+0

Tôi mới đến Groovy và tôi đã làm đau đớn não của tôi tại sao chỉ bỏ qua '=' đã không làm việc. Tôi đã không thể đặt tất cả lại với nhau cho đến khi tôi tìm thấy câu trả lời của bạn và sau đó nó phát hiện ra trên tôi. Cảm ơn! – yuranos87

6

Dưới đây là ví dụ, để vượt qua args chương trình và jvmargs để chạy nhiệm vụ trong gradle.

run { 
    args 'server', 'test.yml' 
    jvmArgs '-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005' 
} 
Các vấn đề liên quan