Return to site

Java 7.0 For Mac

broken image


If you have not yet installed Apple's Java Mac OS X 2012-006 update, then you are still using a version of Apple Java 6 that includes the plug-in and the Java Preferences app. See Note for Users of Macs that Include Apple Java 6 Plug-in.

Java for macOS 2017-001 installs the legacy Java 6 runtime for macOS 10.13 High Sierra, macOS 10.12 Sierra, macOS 10.11 El Capitan, macOS 10.10 Yosemite, macOS 10.9 Mavericks, macOS 10.8 Mountain Lion, and macOS 10.7 Lion. $ java -version java version '1.7.004' Java(TM) SE Runtime Environment (build 1.7.004-b21) Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode) This tutorial shows you how to install Java SE 7 Developer Preview on Mac OS X 10.7.2 Lion running on my MacBook Pro. Download the Oracle JDK7 Mac OS X port dmg file from here. If you have not yet installed Apple's Java OS X 2012-006 update, then you are still using a version of Apple Java 6 that includes the plug-in and the Java Preferences app. See 'Note for Users of OS X that Include Apple Java 6 Plug-in'. There can be multiple JDKs installed on a system, as many as you wish. Oracle has launched the official Java SE 7 for Mac OS X 64-bit platform. You can download it from here. $ java -version java version '1.7.004' Java (TM) SE Runtime Environment (build 1.7.004-b21) Java HotSpot (TM) 64-Bit Server VM (build 23.0-b21, mixed mode).

Java™ SE 7 Update 4

The full internal version number for this update release is 1.7.0_04-b20 (where 'b' means 'build') except for Windows on which it is 1.7.0_04-b22 and for Mac OS X on which it is 1.7.0_04-b21. The external version number is 7u4.

Highlights

This update release contains the following enhancements:

  • JDK Support for Mac OS X
  • New JVM (Java HotSpot Virtual Machine, version 23)
  • New Supported Garbage Collector: Garbage First (G1)
  • JavaFX 2.1 Runtime co-installs with JRE 7 during auto-update
  • JAXP upgraded to 1.4.6
  • Java DB upgraded to 10.8.2.2
  • SPARC T4 specific crypto optimizations in the security area
  • New flag to unlock Commercial Features

Olson Data 2012c

Java SE 7u4 contains Olson time zone data version 2012c. For more information, refer to Timezone Data Versions in the JRE Software.

Security Baselines

The security baselines for the Java SE platform at the time of the release of Java SE 7u4 are specified in the following table:

JRE Family VersionJava SE Security Baseline
71.7.0_03
61.6.0_31
5.01.5.0_34
1.4.21.4.2_36

For more information about security baselines, see Deploying Java Applets With Family JRE Versions in Java Plug-in for Internet Explorer.

JDK Support for Mac OS X

This release of Java SE 7u4 includes 64-bit JDK support for Mac OS X Lion and above. You can download the Mac OS X JDK from Java SE Downloads page.

For information on installing JDK 7u4 for Mac OS X, see Installation for Mac OS X document.
For support details, see Supported System Configurations page.

JDK support for Mac OS X does not include client deployment technologies like Java Plugin and Java Web Start. JRE for Mac OS X will be available in an upcoming JDK 7 update release. For an early access release of the JRE for Mac OS X with applet support, visit Mac OS X Port Developer Preview Release.

Some serviceability features may not work in Java SE 7u4 on Mac OS X. See Known Issues for more details.

New JVM (Java HotSpot Virtual Machine, version 23)

HotSpot 23 features JRockit JVM feature convergence. Some of the value-add features of the JRockit JVM are re-implemented in the HotSpot JVM. These features include:

  • Text dumps with buffered data: buffered JVM state information available in text crash dumps and core/mdmp
  • Diagnostics command framework (jcmd) and diagnostic commands
  • Enhanced JMX Agent

Parallel Old GC (-XX:+UseParallelOldGC) is now enabled by default whenever -XX:+UseParallelGC is enabled. To revert to the previous default behavior, use the option -XX:-UseParallelOldGC on the java command line.

According to specification, the JVM should not maintain any particular order of methods being returned by reflection. In previous versions, the JVM used to return the methods in the declaration order and some user code may have relied on this behavior. Starting from Java SE 7, the JVM no longer guarantees constant order of methods and JMX MBeanInfo no longer guarantees equality of MBeanInfo between two identical MBeans.

New Supported Garbage Collector: Garbage First (G1)

Starting in Java SE 7u4 the Garbage First Collector is fully supported. The G1 collector is targeted for applications that fully utilize the large amount of memory available in today's multiprocessor servers, while still keeping garbage collection latencies under control. Applications that require a large heap, have a big active data set, have bursty or non-uniform workloads or suffer from long Garbage Collection induced latencies should benefit from switching to G1. For more detailed information about G1 see the G1 documentation page and command line options.

JAXP upgraded to 1.4.6

The new JAXP 1.4.6 version includes fixes for critical issues in the areas of conformance, performance, and regressions.

Java DB upgraded to 10.8.2.2

Java DB 10.8.2.2 is a bugfix release. For a complete list of bugs fixed in this release, see http://db.apache.org/derby/releases/release-10.8.2.2.cgi.

SPARC T4 specific crypto optimizations in the security area

SPARC T4 contains on-chip(native) cryptographic implementations. These implementations can be accessed by Java applications utilizing either SunPKCS11-Solaris provider(available since Java SE 5.0 release) or OracleUcrypto Provider(new in 7u4 release).

The new OracleUcrypto Service Provider accesses the underlying native(T4) crypto library without going through the PKCS11 layer and is configured by default to be the most preferred provider for Solaris OS.

New flag to unlock Commercial Features

The Java SE 7 Update 4 release introduces a new flag, -XX:+UnlockCommercialFeatures. This flag enables Oracle Java SE users to control when licensed features are allowed to run. All commercial features started or controlled via the command line or dynamically during execution will be gated by this flag. By default, commercial features are not allowed to execute, and any usage requires an active unlocking either on the command line or dynamically during runtime, to help remove any accidental usage.

For information on command line flags, see the command line documentation for Windows and Solaris/Linux platforms. For information about commercial features in Oracle Java SE and the license requirement please refer to Oracle Java SE Advanced and Suite, and the Binary Code License.

Java 7.0 For Mac Os

Bug Fixes

Java SE 7u4 does not add any fixes for security vulnerabilities beyond those in Java SE 7u3.

Notable Bug Fixes in Java SE 7u4

This list includes some of the notable bug fixes in Java SE 7u4.

Area: java:install
Synopsis: my .jar file can no long run by double-click under Windows Explorer.

The 7u4 installer now correctly registers javaw.exe as handler for jar files. After installing 7u4 build 22(Windows), jars can be launched correctly by double clicking them.

See 7165926.

Area: java/classes_awt 4
Synopsis: [macosx] Document Usage of -XstartOnFirstThread and -Xdock.

The command line arguments -XstartOnFirstThread, -Xdock:icon, and -Xdock:name are now documented as officially supported options on the Mac OS platform. The following command will print out these options at the command line:
java -help
See 7131038.

For other bug fixes, see Java SE 7u4 Bug Fixes.

Known Issues

Area: java/classes_awt
Synopsis: [macosx] dock menu don't show available frames.

Right-clicking a dock icon of a Java app will not list all open Java top-level windows in the menu as Apple JDK used to do. In order to activate a window, find the window on the screen and click it directly. This is a known issue that will be addressed in a future release.
See 7149062.

Area: java command
Synopsis: Wildcard expansion for single entry classpath does not work on Windows platforms.

The Java command and Setting the classpath documents describe how the wildcard character (*) can be used in a classpath element to expand into a list of the .jar files in the associated directory, separated by the classpath separator (;).

This wildcard expansion does not work in a Windows command shell for a single element classpath due to the Microsoft bug described in Wildcard Handling is Broken. A workaround is to add another element to the classpath. For example, instead of the following:

java -classpath 'lib/*' .....

use:

java -classpath 'lib/*;' .....

See 7146424.


Area: java command
Synopsis: Wildcard expansion behavior change on Windows platforms.

In the earlier JDK releases, a wildcard (* or ?) in double quotes on a DOS command line did not get expanded. For example, when using the following command:

java xxx '*.java'

the following string is passed to xxx:

*.java

In the current JDK release, wildcards in quoted arguments get expanded, and the matched file names (.java) are passed to xxx.

A workaround to produce the previous behavior is to escape the double quotes. For example, instead of the following command:

java xxx '*.java'
Java 7.0 for mac free

use:

java xxx '*.java'

Also ensure that your application code can accept both '*.java' as well as *.java as values.


Area: Diagnostics
Synopsis: [macosx] Issues with using Serviceability Agent(SA).

The following developer services are not available on Mac OS X:

  • Process attach and diagnostics for jtools, such as jinfo, jstack, and jmap:

    The system architecture is not recognized and the tools will fail with the error message:
    'Error attaching to process: Bsd only supported on x86/amd64'.

  • Parsing core files:

    Support for reading core files and providing diagnostic information will not be available. Core files from Java crashes are platform specific. The parser for core files on Mac OS X (MACH-O format) is not yet implemented.

Area: java/debugger
Synopsis: JDI/JDB debugger command line option parsing does not allow comma delimited options on Windows platform

When launching JDB from the command line on Windows platform, if a comma delimited JVM option is passed to either the debugger or the debuggee, it may fail with an IllegalArgumentException. For example, consider the following:

In the above command, even though the comma delimited option has quotation marks, these quotes are not preserved for the launched process.

A workaround for this issue is to use additional qualifiers (') with the quotation marks. For example:

This command works correctly as the JVM option now retains the quotation marks.
See 7154809.

Area: java/classes_nio
Synopsis: Selector.select hang due to poll(2) bug [macosx]

An issue with the Mac OS X poll(2) system call has been found to cause problems for networking applications based on the java.nio socket channel classes. This issue has been detected with the Oracle WebLogic Server on Mac OS X.

A workaround to mitigate the problem is setting the following system property on the Java command line:

-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.KQueueSelectorProvider

See 7159361.

For

Area: hotspot/runtime_arguments
Synopsis: JVM not printing unknown -XX options

Java 7.0 For Mac

use:

java xxx '*.java'

Also ensure that your application code can accept both '*.java' as well as *.java as values.


Area: Diagnostics
Synopsis: [macosx] Issues with using Serviceability Agent(SA).

The following developer services are not available on Mac OS X:

  • Process attach and diagnostics for jtools, such as jinfo, jstack, and jmap:

    The system architecture is not recognized and the tools will fail with the error message:
    'Error attaching to process: Bsd only supported on x86/amd64'.

  • Parsing core files:

    Support for reading core files and providing diagnostic information will not be available. Core files from Java crashes are platform specific. The parser for core files on Mac OS X (MACH-O format) is not yet implemented.

Area: java/debugger
Synopsis: JDI/JDB debugger command line option parsing does not allow comma delimited options on Windows platform

When launching JDB from the command line on Windows platform, if a comma delimited JVM option is passed to either the debugger or the debuggee, it may fail with an IllegalArgumentException. For example, consider the following:

In the above command, even though the comma delimited option has quotation marks, these quotes are not preserved for the launched process.

A workaround for this issue is to use additional qualifiers (') with the quotation marks. For example:

This command works correctly as the JVM option now retains the quotation marks.
See 7154809.

Area: java/classes_nio
Synopsis: Selector.select hang due to poll(2) bug [macosx]

An issue with the Mac OS X poll(2) system call has been found to cause problems for networking applications based on the java.nio socket channel classes. This issue has been detected with the Oracle WebLogic Server on Mac OS X.

A workaround to mitigate the problem is setting the following system property on the Java command line:

-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.KQueueSelectorProvider

See 7159361.

Area: hotspot/runtime_arguments
Synopsis: JVM not printing unknown -XX options

If an unrecognized -XX option is supplied to the JVM, it exits. However, the resulting error message does not clearly state that the reason for the JVM exiting is because of the unrecognized option.
See 7162488.

Here is an example of the error output:

Newest post on how to install Oracle JDK 8 / Java SE 8 on Mac OS X 10.10 Yosemite can be found here.

At the time of this writing, there is no official release of Java SE 7 / Oracle JDK 1.7 on Mac OS X. It is still in developer preview based on Apple's contributions to OpenJDK. The Developer Preview is provided to the community so that the developers can get feedback on the ongoing progress of the project. The developer preview should work on any Intel-based Mac and has been tested on Mac OS X 10.6.8 (Snow Leopard) and 10.7 (Lion).

UPDATE

Oracle has launched the official Java SE 7 for Mac OS X 64-bit platform. You can download it from here.

This tutorial shows you how to install Java SE 7 Developer Preview on Mac OS X 10.7.2 Lion running on my MacBook Pro.

1. Download the Oracle JDK7 Mac OS X port dmg file from here. At the time of this writing, the version of the JDK7 is Oracle JDK7 build b223 released on December 23, 2011. The dmg file name is jdk-7-ea-macosx-b223.dmg

2. Create a JavaVirtualMachines folder under /Library/Java if it doesn't exist.

In my case, the JavaVirtualMachines is already there so I don't need to create it manually.

Java 7.0 For Mac Free

3. Open the jdk-7-ea-macosx-b223.dmg file by double-clicking on it. Then drag the JDK 1.7.0 Developer Preview icon in the left side to the JavaVirtualMachines icon folder in the right side.

4. Go to /Library/Java/JavaVirtualMachines directory using Finder application. Then double-click the ‘JDK 1.7.0 Developer Preview' icon. This will open the Java Preferences window. Here you can change the preferred order of the installed Java platforms by dragging it up or down. Make sure the Java SE 7 is in the preferred order or you can simply deselect the Java SE 6 version.

5. Now issue the ‘java -version' command in the terminal window to verify.

Java 7.0 For Mac Torrent

6. Done





broken image