Merge pull request #1710 from hboutemy/KARAF-7637
[KARAF-7637] drop non-reproducible properties store
diff --git a/archetypes/assembly/pom.xml b/archetypes/assembly/pom.xml
index a661ea5..36f6871 100644
--- a/archetypes/assembly/pom.xml
+++ b/archetypes/assembly/pom.xml
@@ -34,7 +34,7 @@
<description>This archetype sets up an empty karaf assembly project.</description>
<properties>
- <archetype.version>3.1.2</archetype.version>
+ <archetype.version>3.2.1</archetype.version>
</properties>
<build>
diff --git a/archetypes/blueprint/pom.xml b/archetypes/blueprint/pom.xml
index 91d6e05..9b30c5b 100644
--- a/archetypes/blueprint/pom.xml
+++ b/archetypes/blueprint/pom.xml
@@ -35,7 +35,7 @@
<description>An archetype for creating a simple blueprint bundle.</description>
<properties>
- <archetype.version>3.1.2</archetype.version>
+ <archetype.version>3.2.1</archetype.version>
</properties>
<build>
diff --git a/archetypes/bundle/pom.xml b/archetypes/bundle/pom.xml
index eb30398..6fdf760 100644
--- a/archetypes/bundle/pom.xml
+++ b/archetypes/bundle/pom.xml
@@ -35,7 +35,7 @@
<description>A simple bundle archetype.</description>
<properties>
- <archetype.version>3.1.2</archetype.version>
+ <archetype.version>3.2.1</archetype.version>
</properties>
<build>
diff --git a/archetypes/command/pom.xml b/archetypes/command/pom.xml
index 1225ebd..fd60247 100644
--- a/archetypes/command/pom.xml
+++ b/archetypes/command/pom.xml
@@ -35,7 +35,7 @@
<description>A Karaf command archetype.</description>
<properties>
- <archetype.version>3.1.2</archetype.version>
+ <archetype.version>3.2.1</archetype.version>
</properties>
<build>
diff --git a/archetypes/feature/pom.xml b/archetypes/feature/pom.xml
index c5d8595..fc1fce2 100644
--- a/archetypes/feature/pom.xml
+++ b/archetypes/feature/pom.xml
@@ -35,7 +35,7 @@
<description>This archetype sets up an empty karaf features project.</description>
<properties>
- <archetype.version>3.1.2</archetype.version>
+ <archetype.version>3.2.1</archetype.version>
</properties>
<build>
diff --git a/archetypes/kar/pom.xml b/archetypes/kar/pom.xml
index ec1f20a..dfd302b 100644
--- a/archetypes/kar/pom.xml
+++ b/archetypes/kar/pom.xml
@@ -35,7 +35,7 @@
<description>This archetype sets up an empty karaf kar project.</description>
<properties>
- <archetype.version>3.1.2</archetype.version>
+ <archetype.version>3.2.1</archetype.version>
</properties>
<build>
diff --git a/tooling/karaf-services-maven-plugin/src/main/java/org/apache/karaf/tooling/tracker/GenerateServiceMetadata.java b/tooling/karaf-services-maven-plugin/src/main/java/org/apache/karaf/tooling/tracker/GenerateServiceMetadata.java
index 1790330..f0eb59a 100644
--- a/tooling/karaf-services-maven-plugin/src/main/java/org/apache/karaf/tooling/tracker/GenerateServiceMetadata.java
+++ b/tooling/karaf-services-maven-plugin/src/main/java/org/apache/karaf/tooling/tracker/GenerateServiceMetadata.java
@@ -16,12 +16,18 @@
*/
package org.apache.karaf.tooling.tracker;
+import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.OutputStream;
+import java.io.OutputStreamWriter;
+import java.io.PrintWriter;
+import java.io.StringReader;
+import java.io.StringWriter;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import java.util.Properties;
import java.util.Set;
@@ -176,8 +182,28 @@
File file = new File(outputDirectory, "OSGI-INF/karaf-tracker/" + serviceClazz.getName());
file.getParentFile().mkdirs();
- try (OutputStream os = buildContext.newFileOutputStream(file)) {
- props.store(os, null);
+ writeProperties(props, file);
+ }
+
+ private void writeProperties(Properties props, File file) throws IOException {
+ try (OutputStream os = buildContext.newFileOutputStream(file); PrintWriter pw = new PrintWriter(new OutputStreamWriter(os, "ISO-8859-1"));
+ StringWriter sw = new StringWriter()) {
+ props.store(sw, null);
+
+ List<String> lines = new ArrayList<>();
+ try (BufferedReader r = new BufferedReader(new StringReader(sw.toString()))) {
+ String line;
+ while ((line = r.readLine()) != null) {
+ if (!line.startsWith("#")) {
+ lines.add(line);
+ }
+ }
+ }
+
+ Collections.sort(lines);
+ for (String l : lines) {
+ pw.println(l);
+ }
}
}