Skip to content

Commit 554d006

Browse files
committed
add minimum system version and javafx removal
1 parent 886153b commit 554d006

1 file changed

Lines changed: 41 additions & 1 deletion

File tree

build/macosx/appbundler/src/com/oracle/appbundler/AppBundlerTask.java

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,11 @@ public class AppBundlerTask extends Task {
7575
private String workingDirectory = null;
7676

7777
private String applicationCategory = null;
78-
7978
private boolean highResolutionCapable = true;
79+
// Oracle Java 7 requires 10.7.3 or later, so require it here.
80+
private String minimumSystem = "10.7.3";
81+
// By default, don't embed Java FX.
82+
private boolean javafx = false;
8083

8184
// JVM info properties
8285
private String mainClassName = null;
@@ -167,9 +170,19 @@ public void setApplicationCategory(String applicationCategory) {
167170
}
168171

169172

173+
public void setMinimumSystem(String minimumSystem) {
174+
this.minimumSystem = minimumSystem;
175+
}
176+
177+
170178
public void setHighResolutionCapable(boolean highResolutionCapable) {
171179
this.highResolutionCapable = highResolutionCapable;
172180
}
181+
182+
183+
public void setJavaFX(boolean javafx) {
184+
this.javafx = javafx;
185+
}
173186

174187

175188
public void setMainClassName(String mainClassName) {
@@ -199,6 +212,29 @@ public void addConfiguredRuntime(FileSet runtime) throws BuildException {
199212
"jre/lib/plugin.jar",
200213
"jre/lib/security/javaws.policy"
201214
});
215+
216+
if (!javafx) {
217+
// http://www.oracle.com/technetwork/java/javase/jdk-7-readme-429198.html
218+
runtime.appendExcludes(new String[] {
219+
"jre/THIRDPARTYLICENSEREADME-JAVAFX.txt",
220+
221+
"jre/lib/javafx.properties",
222+
"jre/lib/jfxrt.jar",
223+
"jre/lib/security/javafx.policy",
224+
225+
"jre/lib/fxplugins.dylib",
226+
"jre/lib/libdecora-sse.dylib",
227+
"jre/lib/libglass.dylib",
228+
"jre/lib/libglib-2.0.0.dylib",
229+
"jre/lib/libgstplugins-lite.dylib",
230+
"jre/lib/libgstreamer-lite.dylib",
231+
"jre/lib/libjavafx-font.dylib",
232+
"jre/lib/libjavafx-iio.dylib",
233+
"jre/lib/libjfxmedia.dylib",
234+
"jre/lib/libjfxwebkit.dylib",
235+
"jre/lib/libprism-es2.dylib"
236+
});
237+
}
202238
}
203239

204240

@@ -552,6 +588,10 @@ private void writeInfoPlist(File file) throws IOException {
552588
if (applicationCategory != null) {
553589
plist.writeProperty("LSApplicationCategoryType", applicationCategory);
554590
}
591+
592+
if (minimumSystem != null) {
593+
plist.writeProperty("LSMinimumSystemVersion", minimumSystem);
594+
}
555595

556596
if (highResolutionCapable) {
557597
plist.writeKey("NSHighResolutionCapable");

0 commit comments

Comments
 (0)