[7u4] Review request for CR 7134730
Greg Brown
greg.x.brown at oracle.com
Mon Feb 13 10:13:03 PST 2012
> 1. General comments the copyright is not formatted right, it is now:
> 2 * Copyright 2012 Oracle and/or its affiliates. All rights reserved.
Thanks - I'll update all of the headers.
> 2. main.m // disclaimer I don't fully understand this language (Objective C ?)
> FULL_VERSION and DOT_VERSION is always is hard-coded to
> 1.7.0 what happens when we go to 1.8.0 ? Can we not set this
> in some automated way.
This is a temporary workaround - see the TODO in main.m re: using a makefile.
> 3. It looks the cp_wildcard expansion is set to TRUE in JLI_LaunchfFxnPtr, do
> we really need this ? the classpath is going to be hard-coded right ? IMO
> we don't require cp wildcarding, we can set that to FALSE.
Thanks for catching that - I had originally planned to use wildcard expansion, but the current implementation does not do that. I will set it to FALSE.
> 4. I also find the version string hard-coded in build.xml, we need to have a mechanism
> such that version information is derived from the make/build logic.
Do you mean the version that we get from build.properties?
> 5. The test is great, but how will the test be executed ? typically
> in the jdk, the tests are located under jdk/test/......, and these are all run by
> jtreg automatically on a periodic basis (nightly, weekly, promotion etc), we
> need this hooked up into that framework.
You are correct - enabling automated unit tests for this code is still a TODO.
> 6. AppBundlerTask.java.html
>
> Does the ant code get built and run with jdk6 ?
No, Java 7 is required.
> it that is the case then the following
> may be moot, but of course you can use for-each and simplify some code below.
>
> 71 private ArrayList<File> classPath = new ArrayList<File>();
> 72 private ArrayList<File> nativeLibraries = new ArrayList<File>();
> 73 private ArrayList<String> options = new ArrayList<String>();
> 74 private ArrayList<String> arguments = new ArrayList<String>();
>
> you can set the assiged type to List.
> private List<File> classPath = new ArrayList<>();
That's true. I haven't fully acclimated myself to Java 7 syntax yet. :-)
> lines 135....
>
> 135 public void addConfiguredClassPath(FileSet classPath) {
> 136 File parent = classPath.getDir();
> 137
> 138 DirectoryScanner directoryScanner = classPath.getDirectoryScanner(getProject());
> -139 String[] includedFiles = directoryScanner.getIncludedFiles();
> 140
> -141 for (int i = 0; i< includedFiles.length; i++) {
> -142 this.classPath.add(new File(parent, includedFiles[i]));
> -143 }
> for (String name : directoryScanner.getIncludedFiles() {
> this.classPath.add(new File(parent, name);
> }
> 144 }
Thanks for this suggestion. Apparently I'm not yet fully acclimated to Java 7 APIs, either. ;-)
> similarly lines 453 and 477.
>
> Test.java, I would make the test program dump out the args as well,
> and pass some dummy args to ensure that args are passed correctly
> to the app's main.
Good idea.
> I noticed that you set the starting heapsize and maximum heap size ?
That's just to test setting VM options using the launcher. I can change them to something else if there are better test options to use.
G
More information about the macosx-port-dev
mailing list