build.gradle 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // Capsule plugin
  2. plugins {
  3. id "us.kirchmeier.capsule" version "1.0.2"
  4. }
  5. apply plugin: 'java'
  6. sourceCompatibility = 1.8
  7. targetCompatibility = 1.8
  8. version = '0.3'
  9. ext.jacksonVer = '2.7.4'
  10. ext.quasarVer = '0.7.5'
  11. ext.comsatVer = '0.7.0'
  12. ext.capsuleVer = '1.0.2'
  13. ext.jettyVer = '9.3.9.v20160517'
  14. ext.undertowVer = '1.3.22.Final'
  15. [compileJava, compileTestJava]*.options*.encoding = "UTF-8"
  16. repositories {
  17. mavenCentral()
  18. maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
  19. // mavenLocal()
  20. }
  21. configurations {
  22. quasar
  23. }
  24. configurations.all {
  25. resolutionStrategy {
  26. failOnVersionConflict()
  27. force "org.eclipse.jetty:jetty-util:$jettyVer"
  28. force "org.eclipse.jetty:jetty-io:$jettyVer"
  29. force "org.eclipse.jetty:jetty-http:$jettyVer"
  30. force "org.eclipse.jetty:jetty-server:$jettyVer"
  31. force "org.eclipse.jetty:jetty-servlet:$jettyVer"
  32. force "org.eclipse.jetty:jetty-webapp:$jettyVer"
  33. force "org.eclipse.jetty:jetty-xml:$jettyVer"
  34. force "org.eclipse.jetty.websocket:websocket-server:$jettyVer"
  35. force "org.eclipse.jetty.websocket:websocket-servlet:$jettyVer"
  36. force "org.eclipse.jetty.websocket:websocket-client:$jettyVer"
  37. force "io.undertow:undertow-core:$undertowVer"
  38. force "io.undertow:undertow-servlet:$undertowVer"
  39. }
  40. }
  41. configurations.capsule.dependencies.clear()
  42. dependencies {
  43. compile "co.paralleluniverse:quasar-core:$quasarVer:jdk8"
  44. compile "com.fasterxml.jackson.core:jackson-databind:$jacksonVer"
  45. compile "co.paralleluniverse:comsat-servlet:$comsatVer"
  46. compile "co.paralleluniverse:comsat-test-utils:$comsatVer"
  47. capsule "co.paralleluniverse:capsule:$capsuleVer"
  48. quasar "co.paralleluniverse:quasar-core:$quasarVer:jdk8"
  49. }
  50. task capsule(type: FatCapsule) {
  51. applicationClass "hello.World"
  52. capsuleManifest {
  53. javaAgents = [configurations.quasar.iterator().next().getName()]
  54. mode('undertow') {
  55. systemProperties['serverClass'] = 'hello.UndertowServer'
  56. }
  57. mode('jetty') {
  58. systemProperties['serverClass'] = 'hello.JettyServer'
  59. }
  60. }
  61. }
  62. task wrapper(type: Wrapper) {
  63. gradleVersion = '2.14'
  64. }