Browse Source

Always include default widget set files in OSGi manifest (#16993)

Change-Id: Ib1fc01ced602d3434a0ad63725601237a0def4d1
tags/7.5.0.alpha1
Artur Signell 9 years ago
parent
commit
6e6dd6ff0d

+ 11
- 4
buildhelpers/src/com/vaadin/buildhelpers/GeneratePackageExports.java View File

@@ -47,7 +47,8 @@ public class GeneratePackageExports {
System.err
.println("Invalid number of parameters\n"
+ "Usage: java -cp .. GenerateManifest <package.jar> <accepted package prefixes>\n"
+ "Use -Dvaadin.version to specify the version to be used for the packages");
+ "Use -Dvaadin.version to specify the version to be used for the packages\n"
+ "Use -DincludeNumberPackages=1 to include package names which start with a number (not 100% OSGi compatible)");
System.exit(1);
}

@@ -67,8 +68,14 @@ public class GeneratePackageExports {
acceptedPackagePrefixes.add(args[i]);
}

boolean includeNumberPackages = false;
if ("1".equals(System.getProperty("includeNumberPackages"))) {
includeNumberPackages = true;
}

// List the included Java packages
HashSet<String> packages = getPackages(jar, acceptedPackagePrefixes);
HashSet<String> packages = getPackages(jar, acceptedPackagePrefixes,
includeNumberPackages);

// Avoid writing empty Export-Package attribute
if (packages.isEmpty()) {
@@ -171,7 +178,7 @@ public class GeneratePackageExports {
}

private static HashSet<String> getPackages(JarFile jar,
List<String> acceptedPackagePrefixes) {
List<String> acceptedPackagePrefixes, boolean includeNumberPackages) {
HashSet<String> packages = new HashSet<String>();

Pattern startsWithNumber = Pattern.compile("\\.\\d");
@@ -194,7 +201,7 @@ public class GeneratePackageExports {
String pkg = entry.getName().substring(0, lastSlash)
.replace('/', '.');

if (startsWithNumber.matcher(pkg).find()) {
if (!includeNumberPackages && startsWithNumber.matcher(pkg).find()) {
continue;
}


+ 1
- 0
client-compiled/build.xml View File

@@ -124,6 +124,7 @@
<target name="jar" depends="default-widgetset">
<antcall target="common.jar">
<param name="osgi.extra.package.prefixes" value="VAADIN/widgetsets/" />
<param name="osgi.includeNumberPackages" value="1" />
<reference torefid="extra.jar.includes" refid="jar.includes" />
</antcall>
</target>

+ 3
- 1
common.xml View File

@@ -163,6 +163,7 @@
<param name="bundle-name" value="${module.name}" />
<param name="bundle-symbolic" value="${module.symbolic}" />
<param name="bundle-vendor" value="${vaadin.vendor}" />
<param name="includeNumberPackages" value="${osgi.includeNumberPackages}" />
</antcall>

</target>
@@ -174,7 +175,7 @@
<fail unless="bundle-symbolic" message="No bundle-symbolic parameter given" />
<fail unless="bundle-version" message="No bundle-version parameter given" />
<fail unless="bundle-vendor" message="No bundle-vendor parameter given" />
<fail unless="includeNumberPackages" message="No includeNumberPackages parameter given" />
<property name="bundle-manifestversion" value="2" />

<jar file="${jar}" update="true">
@@ -228,6 +229,7 @@
<arg line="com/vaadin com/google ${osgi.extra.package.prefixes}" />
<classpath refid="buildhelpers.classpath" />
<jvmarg value="-Dvaadin.version=${vaadin.version}" />
<jvmarg value="-DincludeNumberPackages=${includeNumberPackages}" />
</java>
</target>


Loading…
Cancel
Save