From 2c46774d94b51bcb0fd8560305edef58363af087 Mon Sep 17 00:00:00 2001 From: Joe George Date: Fri, 20 May 2016 17:06:29 -0400 Subject: Add javadoc, signing, and maven upload --- java/src/Freeze/build.gradle | 3 +++ java/src/Glacier2/build.gradle | 3 +++ java/src/Ice/build.gradle | 4 ++++ java/src/IceBox/build.gradle | 3 +++ java/src/IceDiscovery/build.gradle | 3 +++ java/src/IceGrid/build.gradle | 3 +++ java/src/IceGridGUI/build.gradle | 3 +++ java/src/IceLocatorDiscovery/build.gradle | 3 +++ java/src/IcePatch2/build.gradle | 3 +++ java/src/IceStorm/build.gradle | 3 +++ 10 files changed, 31 insertions(+) (limited to 'java/src') diff --git a/java/src/Freeze/build.gradle b/java/src/Freeze/build.gradle index 82a92a36728..a10d36f2111 100644 --- a/java/src/Freeze/build.gradle +++ b/java/src/Freeze/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "Freeze" +project.ext.description = "Persistent storage for Ice objects" + slice { java { args = "--ice" diff --git a/java/src/Glacier2/build.gradle b/java/src/Glacier2/build.gradle index 95523335179..feedebb7041 100644 --- a/java/src/Glacier2/build.gradle +++ b/java/src/Glacier2/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "Glacier2" +project.ext.description = "Firewall traversal for Ice" + slice { java { set1 { diff --git a/java/src/Ice/build.gradle b/java/src/Ice/build.gradle index 0f8e6ebf5fc..46cc588acaf 100644 --- a/java/src/Ice/build.gradle +++ b/java/src/Ice/build.gradle @@ -10,6 +10,10 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "Ice" +project.ext.description = "Ice is a comprehensive RPC framework that helps you build distributed applications" + + " with minimal effort using familiar object-oriented idioms" + slice { java { stream { diff --git a/java/src/IceBox/build.gradle b/java/src/IceBox/build.gradle index 129bd4ee6fd..8ef453cc9fb 100644 --- a/java/src/IceBox/build.gradle +++ b/java/src/IceBox/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "IceBox" +project.ext.description = "IceBox is an easy-to-use framework for Ice application services" + slice { java { set1 { diff --git a/java/src/IceDiscovery/build.gradle b/java/src/IceDiscovery/build.gradle index 1ceae86a28a..9c7b78cfcc1 100644 --- a/java/src/IceDiscovery/build.gradle +++ b/java/src/IceDiscovery/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "IceDiscovery" +project.ext.description = "Allow Ice applications to discover objects and object adapters" + slice { java { args = "--ice" diff --git a/java/src/IceGrid/build.gradle b/java/src/IceGrid/build.gradle index 1a630ca17d0..8e72c858086 100644 --- a/java/src/IceGrid/build.gradle +++ b/java/src/IceGrid/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "IceGrid" +project.ext.description = "Locate, deploy, and manage Ice servers" + slice { java { set1 { diff --git a/java/src/IceGridGUI/build.gradle b/java/src/IceGridGUI/build.gradle index 493396c436f..bc6e4ae87ac 100644 --- a/java/src/IceGridGUI/build.gradle +++ b/java/src/IceGridGUI/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "IceGridGUI" +project.ext.description = "" + def macosx = System.properties['os.name'] == "Mac OS X" // Check for JavaFX support diff --git a/java/src/IceLocatorDiscovery/build.gradle b/java/src/IceLocatorDiscovery/build.gradle index c4c80ac7699..0ef49c788be 100644 --- a/java/src/IceLocatorDiscovery/build.gradle +++ b/java/src/IceLocatorDiscovery/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "IceLocatorDiscovery" +project.ext.description = "Ice plug-in that enables the discovery of IceGrid and custom locators via UDP multicast" + slice { java { args = "--ice" diff --git a/java/src/IcePatch2/build.gradle b/java/src/IcePatch2/build.gradle index 4d33df19f28..4fc3e88e8a3 100644 --- a/java/src/IcePatch2/build.gradle +++ b/java/src/IcePatch2/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "IcePatch2" +project.ext.description = "File distribution and patching for Ice" + slice { java { set1 { diff --git a/java/src/IceStorm/build.gradle b/java/src/IceStorm/build.gradle index ab6bd9d9281..af5afb24b1d 100644 --- a/java/src/IceStorm/build.gradle +++ b/java/src/IceStorm/build.gradle @@ -10,6 +10,9 @@ sourceCompatibility = iceSourceCompatibility targetCompatibility = iceTargetCompatibility +project.ext.displayName = "IceStorm" +project.ext.description = "Publish-subscribe event distribution service" + slice { java { set1 { -- cgit v1.2.3 From c882cb2611fa87340017913889d510cc72025c6d Mon Sep 17 00:00:00 2001 From: Jose Date: Thu, 26 May 2016 17:04:17 +0200 Subject: Java build fixes to better support Debian packaging: * Allow to build with dependencies for /usr/share/maven-repo if present it is add as the high priority repo * IceGridGUI can be build to depend on system JARs rather than creating a proguard jar. * The JGoodies versions used by IceGridGUI is not hardcode and can be set using Gradle properties. --- java/Makefile | 7 +-- java/build.gradle | 18 ++++++ java/gradle.properties | 16 +++++ java/gradle/ice.gradle | 32 +++------- java/gradle/library.gradle | 2 +- java/src/IceGridGUI/build.gradle | 124 ++++++++++++++++++++++++++++++--------- java/test/build.gradle | 4 +- 7 files changed, 145 insertions(+), 58 deletions(-) (limited to 'java/src') diff --git a/java/Makefile b/java/Makefile index e20eabf69b5..5ec69f9d894 100644 --- a/java/Makefile +++ b/java/Makefile @@ -8,11 +8,11 @@ # ********************************************************************** ifneq ($(prefix),) -INSTALL_FLAGS += -Dorg.gradle.project.prefix=$(prefix) +INSTALL_FLAGS += -Pprefix=$(prefix) endif ifneq ($(DESTDIR),) -INSTALL_FLAGS += -Dorg.gradle.project.DESTDIR=$(DESTDIR) +INSTALL_FLAGS += -PDESTDIR=$(DESTDIR) endif ifeq ($(GRADLE),) @@ -23,8 +23,7 @@ all: $(GRADLE) $(BUILD_FLAGS) build dist: - $(GRADLE) $(BUILD_FLAGS) :Ice:assemble :Freeze:assemble :Glacier2:assemble :IceGrid:assemble \ - :IceBox:assemble :IceDiscovery:assemble :IcePatch2:assemble :IceStorm:assemble :IceGridGUI:assemble + $(GRADLE) $(BUILD_FLAGS) dist clean: $(GRADLE) clean diff --git a/java/build.gradle b/java/build.gradle index 3f4d8db0a28..d734ba5accc 100644 --- a/java/build.gradle +++ b/java/build.gradle @@ -23,6 +23,13 @@ subprojects { dirs slice.jarDir } } + + if(new File("/usr/share/maven-repo").exists()) { + maven { + url "/usr/share/maven-repo" + } + } + maven { url 'https://repo.zeroc.com/nexus/content/repositories/thirdparty' } @@ -44,6 +51,17 @@ subprojects { } } +task dist() +dist.dependsOn(project(":ice").assemble) +dist.dependsOn(project(":freeze").assemble) +dist.dependsOn(project(":glacier2").assemble) +dist.dependsOn(project(":icegrid").assemble) +dist.dependsOn(project(":icebox").assemble) +dist.dependsOn(project(":icediscovery").assemble) +dist.dependsOn(project(":icepatch2").assemble) +dist.dependsOn(project(":icestorm").assemble) +dist.dependsOn(project(":IceGridGUI").assemble) + // // Used to build the gradle wrapper to automatically download and install // the version of gradle needed to build Ice. diff --git a/java/gradle.properties b/java/gradle.properties index 98f7bac4206..3fc62d55739 100644 --- a/java/gradle.properties +++ b/java/gradle.properties @@ -27,6 +27,19 @@ dbHome = // prefix = + +// +// The Jgoodies third party package versions to use with IceGridGUI builds. +// +jgoodiesLooksVersion = 2.6.0 +jgoodiesFormsVersion = 1.8.0 + +// +// Set to true if you want IceGridGUI build to create an standalone jar +// using proguard +// +icegridguiProguard = true + // // Define debug as true if you want to build with debug information, // false otherwise. @@ -48,3 +61,6 @@ org.gradle.parallel = true // Package build properties // DESTDIR = + + + diff --git a/java/gradle/ice.gradle b/java/gradle/ice.gradle index 284f6b78a33..7ebae88d914 100644 --- a/java/gradle/ice.gradle +++ b/java/gradle/ice.gradle @@ -27,6 +27,14 @@ buildscript { } } } + + if(new File("/usr/share/maven-repo").exists()){ + repositories { + maven { + url "file:///usr/share/maven-repo" + } + } + } repositories { maven { @@ -34,7 +42,7 @@ buildscript { } } dependencies { - classpath group: 'com.zeroc.gradle.ice-builder', name: 'slice', version: '1.3.2' + classpath group: 'com.zeroc.gradle.ice-builder', name: 'slice', version: '1.3.6' } } @@ -124,29 +132,7 @@ ext.searchFile = { List places, List searchPaths -> } } -def demoJar(name) { - def taskName = name + "Jar" - // Create a jar for the client & server which includes everything in the demo. - def jarTask = tasks.create(name: taskName, type: Jar) { - version = "" - baseName = name - from(sourceSets.main.output) { - include "**" - } - } - jarTask.manifest { - attributes("Main-Class": name.capitalize()) - attributes("Class-Path": configurations.runtime.resolve().collect { it.toURI() }.join(' ')) - } - - artifacts { - archives jarTask - } -} -ext { - demoJar = this.&demoJar -} def localDependency(artifactId) { if (project.slice.srcDist) { diff --git a/java/gradle/library.gradle b/java/gradle/library.gradle index 8299bdc3f0a..532d58e7663 100644 --- a/java/gradle/library.gradle +++ b/java/gradle/library.gradle @@ -41,7 +41,7 @@ ext.projectPom = { developer { name 'ZeroC Developers' email 'info@zeroc.com' - organization 'ZeroC, Inc.' + organization = 'ZeroC, Inc.' organizationUrl 'https://zeroc.com' } } diff --git a/java/src/IceGridGUI/build.gradle b/java/src/IceGridGUI/build.gradle index bc6e4ae87ac..79b9622a1e8 100644 --- a/java/src/IceGridGUI/build.gradle +++ b/java/src/IceGridGUI/build.gradle @@ -46,14 +46,16 @@ dependencies { compile project(':icestorm') compile project(':glacier2') compile project(':icegrid') - compile 'com.jgoodies:jgoodies-common:1.8.0' - compile 'com.jgoodies:jgoodies-looks:2.6.0' - compile 'com.jgoodies:jgoodies-forms:1.8.0' + compile "com.jgoodies:jgoodies-looks:${jgoodiesLooksVersion}" + compile "com.jgoodies:jgoodies-forms:${jgoodiesFormsVersion}" bundleapp 'com.oracle:appbundler:1.0' } def tmpJarName = "IceGridGUITEMP.jar" def jarName = "icegridgui.jar" +def env = System.getenv() +def keystore = env['JARSIGNER_KEYSTORE'] +def keystore_password = env['JARSIGNER_KEYSTORE_PASSWORD'] jar { archiveName = tmpJarName @@ -65,13 +67,16 @@ jar { } buildscript { - repositories { - maven { - url "https://${iceMavenRepo}/nexus/content/repositories/thirdparty" + + if(icegridguiProguard.toBoolean()) { + repositories { + maven { + url "https://${iceMavenRepo}/nexus/content/repositories/thirdparty" + } + } + dependencies { + classpath group: 'net.sourceforge', name: 'proguard', version: '5.0' } - } - dependencies { - classpath group: 'net.sourceforge', name: 'proguard', version: '5.0' } } @@ -88,28 +93,89 @@ if (hasJavaFx) { libJars << javafxJar } -task proguardJar(type: proguard.gradle.ProGuardTask, dependsOn: jar) { - injars configurations.compile.resolve(), filter: '!META-INF/**' - injars "${projectDir}/build/libs/${tmpJarName}" - outjars "${libDir}/${jarName}" - libraryjars libJars - configuration 'icegridgui.pro' -} -task updateManifest(dependsOn: proguardJar) << { - if (hasJavaFx) { +if(icegridguiProguard.toBoolean()) { + + task proguardJar(type: proguard.gradle.ProGuardTask, dependsOn: jar) { + injars configurations.compile.resolve(), filter: "!META-INF/**" + injars "${projectDir}/build/libs/${tmpJarName}" + outjars "${libDir}/${jarName}" + libraryjars libJars + configuration 'icegridgui.pro' + } + + task updateManifest(dependsOn: proguardJar) << { + if (hasJavaFx) { + ant.jar(update: true, destfile: "${libDir}/${jarName}") { + delegate.manifest { + attribute(name: 'Main-Class', value: 'IceGridGUI.MainProxy') + attribute(name: 'Built-By', value: 'Zeroc, Inc.') + attribute(name: 'Class-Path', value: '../resources/') + } + } + } + } + + task copyJars(type: Copy, dependsOn: updateManifest) { + from new File("${libDir}/${jarName}") + into "${DESTDIR}${jarDir}" + } + +} else { + + task copyTmpJars(type: Copy, dependsOn: jar) { + from new File("${projectDir}/build/libs/${tmpJarName}") + into "${libDir}" + rename("${tmpJarName}", "${jarName}") + + } + + task updateManifest(dependsOn: copyTmpJars) << { ant.jar(update: true, destfile: "${libDir}/${jarName}") { delegate.manifest { - attribute(name: 'Main-Class', value: 'IceGridGUI.MainProxy') - attribute(name: 'Built-By', value: 'Zeroc, Inc.') - attribute(name: 'Class-Path', value: '../resources/') + attribute(name: "Main-Class", value: "IceGridGUI.Main") + attribute(name: "Built-By", value: "ZeroC, Inc.") + attribute(name: "Class-Path", value: "../resources/ " + + configurations.runtime.resolve().collect { it.toURI() }.join(' ')) } } } -} -def env = System.getenv() -def keystore = env['JARSIGNER_KEYSTORE'] -def keystore_password = env['JARSIGNER_KEYSTORE_PASSWORD'] + // + // Copy JARs to the install location + // + task copyJars(type: Copy, dependsOn: jar) { + from new File("${projectDir}/build/libs/${tmpJarName}") + into "${DESTDIR}${jarDir}" + rename("${tmpJarName}", "${jarName}") + } + + // + // We need to update the manifest of the installed IceGridGUI jar and fix the + // Class-Path to point to the installed JAR files. + // + task updateInstallManifest(dependsOn: copyJars) << { + ant.jar(update: true, destfile: "${DESTDIR}${jarDir}/${jarName}") { + delegate.manifest { + attribute(name: "Main-Class", value: "IceGridGUI.Main") + attribute(name: "Built-By", value: "ZeroC, Inc.") + attribute(name: "Class-Path", value: "../resources/ " + + configurations.runtime.resolve().collect { it.toURI() }.join(' ').replaceAll("${libDir}", "${jarDir}")) + } + } + } + + // + // We need to sign the install JARs after updating the manifest. + // + task signInstalJar(dependsOn: updateInstallManifest) << { + if(keystore != null && keystore.length() > 0) { + ant.signjar(jar: "${DESTDIR}${jarDir}/${jarName}", + alias: "zeroc.com", + keystore: "${keystore}", + storepass:"${storepass}") + } + } +} task signjar(dependsOn: updateManifest) << { if(keystore != null && keystore.length() > 0) { @@ -165,12 +231,12 @@ clean { delete("${libDir}/IceGrid Admin.app") } -task copyJars(type: Copy, dependsOn: updateManifest) { - from new File("${libDir}/${jarName}") - into "${DESTDIR}${jarDir}" +if(icegridguiProguard.toBoolean()) { + task install(dependsOn: copyJars) +}else{ + task install(dependsOn: signInstalJar) } -task install(dependsOn: copyJars) if(macosx) { install.dependsOn(copyBundle) } diff --git a/java/test/build.gradle b/java/test/build.gradle index 6b6150b644c..f544bbac7f8 100644 --- a/java/test/build.gradle +++ b/java/test/build.gradle @@ -37,7 +37,9 @@ dependencies { compile project(':testPlugins') compile project(':testController') compile files(dbJar) - runtime "org.apache.tools:bzip2:1.0" + if(!gradle.startParameter.isOffline()) { + runtime "org.apache.tools:bzip2:1.0" + } } jar { -- cgit v1.2.3 From 92f4cebc3121ca2122154c4784e1ad5d0adf730c Mon Sep 17 00:00:00 2001 From: Jose Date: Fri, 27 May 2016 12:07:08 +0200 Subject: Fixes proguar dependencies --- java/src/IceGridGUI/build.gradle | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'java/src') diff --git a/java/src/IceGridGUI/build.gradle b/java/src/IceGridGUI/build.gradle index 79b9622a1e8..0ac26e6b019 100644 --- a/java/src/IceGridGUI/build.gradle +++ b/java/src/IceGridGUI/build.gradle @@ -67,17 +67,16 @@ jar { } buildscript { - - if(icegridguiProguard.toBoolean()) { repositories { maven { url "https://${iceMavenRepo}/nexus/content/repositories/thirdparty" } } dependencies { - classpath group: 'net.sourceforge', name: 'proguard', version: '5.0' + if(icegridguiProguard.toBoolean()) { + classpath group: 'net.sourceforge', name: 'proguard', version: '5.0' + } } - } } def libJars = [] -- cgit v1.2.3 From 7db5099a1cbe36167ad58fd12f3939ae2ba38ac5 Mon Sep 17 00:00:00 2001 From: Jose Date: Mon, 6 Jun 2016 13:08:40 +0200 Subject: IceGridGUI build fixes Default to JGoodies libraries from maven central --- java/build.gradle | 2 ++ java/gradle.properties | 4 ++-- java/gradle/ice.gradle | 2 ++ java/src/IceGridGUI/build.gradle | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) (limited to 'java/src') diff --git a/java/build.gradle b/java/build.gradle index d734ba5accc..8c0cbb25b30 100644 --- a/java/build.gradle +++ b/java/build.gradle @@ -30,6 +30,8 @@ subprojects { } } + mavenCentral() + maven { url 'https://repo.zeroc.com/nexus/content/repositories/thirdparty' } diff --git a/java/gradle.properties b/java/gradle.properties index 3fc62d55739..509318595e1 100644 --- a/java/gradle.properties +++ b/java/gradle.properties @@ -31,8 +31,8 @@ prefix = // // The Jgoodies third party package versions to use with IceGridGUI builds. // -jgoodiesLooksVersion = 2.6.0 -jgoodiesFormsVersion = 1.8.0 +jgoodiesLooksVersion = 2.7.0 +jgoodiesFormsVersion = 1.9.0 // // Set to true if you want IceGridGUI build to create an standalone jar diff --git a/java/gradle/ice.gradle b/java/gradle/ice.gradle index 7ebae88d914..2a40fa418ad 100644 --- a/java/gradle/ice.gradle +++ b/java/gradle/ice.gradle @@ -37,6 +37,8 @@ buildscript { } repositories { + mavenCentral() + maven { url "https://${iceMavenRepo}/nexus/content/repositories/releases" } diff --git a/java/src/IceGridGUI/build.gradle b/java/src/IceGridGUI/build.gradle index 0ac26e6b019..34b8527585f 100644 --- a/java/src/IceGridGUI/build.gradle +++ b/java/src/IceGridGUI/build.gradle @@ -68,6 +68,7 @@ jar { buildscript { repositories { + mavenCentral() maven { url "https://${iceMavenRepo}/nexus/content/repositories/thirdparty" } -- cgit v1.2.3 From ae157f339fb6563c2db958769c9fde531812f4d4 Mon Sep 17 00:00:00 2001 From: jose Date: Wed, 8 Jun 2016 20:01:28 +0200 Subject: Remove ../resources from Class-Path That entry is not required in Class-Path and it causes a warning with debian packaging --- java/src/IceGridGUI/build.gradle | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'java/src') diff --git a/java/src/IceGridGUI/build.gradle b/java/src/IceGridGUI/build.gradle index 34b8527585f..83e0d4fd845 100644 --- a/java/src/IceGridGUI/build.gradle +++ b/java/src/IceGridGUI/build.gradle @@ -109,7 +109,6 @@ if(icegridguiProguard.toBoolean()) { delegate.manifest { attribute(name: 'Main-Class', value: 'IceGridGUI.MainProxy') attribute(name: 'Built-By', value: 'Zeroc, Inc.') - attribute(name: 'Class-Path', value: '../resources/') } } } @@ -134,8 +133,7 @@ if(icegridguiProguard.toBoolean()) { delegate.manifest { attribute(name: "Main-Class", value: "IceGridGUI.Main") attribute(name: "Built-By", value: "ZeroC, Inc.") - attribute(name: "Class-Path", value: "../resources/ " + - configurations.runtime.resolve().collect { it.toURI() }.join(' ')) + attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { it.toURI() }.join(' ')) } } } @@ -158,8 +156,7 @@ if(icegridguiProguard.toBoolean()) { delegate.manifest { attribute(name: "Main-Class", value: "IceGridGUI.Main") attribute(name: "Built-By", value: "ZeroC, Inc.") - attribute(name: "Class-Path", value: "../resources/ " + - configurations.runtime.resolve().collect { it.toURI() }.join(' ').replaceAll("${libDir}", "${jarDir}")) + attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { it.toURI() }.join(' ').replaceAll("${libDir}", "${jarDir}")) } } } -- cgit v1.2.3 From f819903e5b2ae6ae3150ccb24c47274d384d8ce7 Mon Sep 17 00:00:00 2001 From: jose Date: Wed, 8 Jun 2016 22:20:54 +0200 Subject: Use absolute paths in Class-Path --- java/gradle/library.gradle | 4 ++-- java/src/IceGridGUI/build.gradle | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'java/src') diff --git a/java/gradle/library.gradle b/java/gradle/library.gradle index ee97f60a628..7353e00cbb3 100644 --- a/java/gradle/library.gradle +++ b/java/gradle/library.gradle @@ -129,7 +129,7 @@ clean { // Check if we need to update the JARs class-path // if(jarsClassPath.toBoolean()){ - task copyJars(type: Copy, dependsOn: jarSources, overwrite: true) { + task copyJars(type: Copy, dependsOn: [jarSources, javadocJar], overwrite: true) { from "${pomName}" from "${libDir}/${jar.archiveName}" from "${libDir}/${project.name}-${project.version}-sources.jar" @@ -140,7 +140,7 @@ if(jarsClassPath.toBoolean()){ ant.jar(update: true, destfile: "${DESTDIR}${jarDir}/${jar.archiveName}") { delegate.manifest { attribute(name: "Built-By", value: "ZeroC, Inc.") - attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { it.toURI() }.join(' ').replaceAll("${libDir}", "${jarDir}")) + attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { "file://${it.absolutePath}" }.join(' ').replaceAll("${libDir}", "${jarDir}")) } } } diff --git a/java/src/IceGridGUI/build.gradle b/java/src/IceGridGUI/build.gradle index 83e0d4fd845..fa6a55a150f 100644 --- a/java/src/IceGridGUI/build.gradle +++ b/java/src/IceGridGUI/build.gradle @@ -133,7 +133,7 @@ if(icegridguiProguard.toBoolean()) { delegate.manifest { attribute(name: "Main-Class", value: "IceGridGUI.Main") attribute(name: "Built-By", value: "ZeroC, Inc.") - attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { it.toURI() }.join(' ')) + attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { "file://${it.absolutePath}" }.join(' ')) } } } @@ -156,7 +156,7 @@ if(icegridguiProguard.toBoolean()) { delegate.manifest { attribute(name: "Main-Class", value: "IceGridGUI.Main") attribute(name: "Built-By", value: "ZeroC, Inc.") - attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { it.toURI() }.join(' ').replaceAll("${libDir}", "${jarDir}")) + attribute(name: "Class-Path", value: configurations.runtime.resolve().collect { "file://${it.absolutePath}" }.join(' ').replaceAll("${libDir}", "${jarDir}")) } } } -- cgit v1.2.3 From 4a14f7503e36c1f0111ebba12969fdbab21cdc5f Mon Sep 17 00:00:00 2001 From: Benoit Foucher Date: Fri, 29 Apr 2016 10:35:53 +0200 Subject: Fixed bug where connection to SOCKs/HTTP proxies could hang under certain conditions --- cpp/src/Ice/StreamSocket.cpp | 2 +- java/src/Ice/src/main/java/IceInternal/StreamSocket.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'java/src') diff --git a/cpp/src/Ice/StreamSocket.cpp b/cpp/src/Ice/StreamSocket.cpp index e11d5709aa4..efbe6c301e5 100644 --- a/cpp/src/Ice/StreamSocket.cpp +++ b/cpp/src/Ice/StreamSocket.cpp @@ -32,7 +32,7 @@ StreamSocket::StreamSocket(const ProtocolInstancePtr& instance, #ifndef ICE_USE_IOCP if(doConnect(_fd, _proxy ? _proxy->getAddress() : _addr, sourceAddr)) { - _state = StateConnected; + _state = _proxy ? StateProxyWrite : StateConnected; } #endif _desc = fdToString(_fd, _proxy, _addr); diff --git a/java/src/Ice/src/main/java/IceInternal/StreamSocket.java b/java/src/Ice/src/main/java/IceInternal/StreamSocket.java index c628d791d71..03cd265e0e6 100644 --- a/java/src/Ice/src/main/java/IceInternal/StreamSocket.java +++ b/java/src/Ice/src/main/java/IceInternal/StreamSocket.java @@ -27,7 +27,7 @@ public class StreamSocket init(); if(Network.doConnect(_fd, _proxy != null ? _proxy.getAddress() : _addr, sourceAddr)) { - _state = StateConnected; + _state = _proxy != null ? StateProxyWrite : StateConnected; } } catch(Ice.LocalException ex) -- cgit v1.2.3