Java SE 6 For Mac OS X
wchatam writes "After a long delay, Apple has finally released a version of Java 6 for OS X. 64-bit Intel Macs are starting to see this pushed out via Software Update, but there has not been an announcement for when 32-bit Intel and PowerPC Mac users will get their versions."
Look, if you're going to repeat a lame joke, at least be accurate. It goes like this:
"Java: write once, debug everywhere."
This is 5 days old news, and it's not that big news anyway.
I guess it could be a reason which makes it 64-bit only aswell, or they just considered the other platforms to old to care, but that kind of suck. Pretty normal in Apple-land to consider old OS versions obsulete thought so maybe it's true for hardware aswell?
(Never mind the Apple fanboys which says that a G3 are still future proof.... Or how macs don't crash (mine crashed today for instance, I can somewhat understand it since Safari usually pick up like 800 MB of ram and I only have 2GB and I had run Google Earth aswell. And if the machine runs out of ram you get issues. But what I can't understand is why Safari and Flash on OS X has to be such pile of shit so it needs 2GB to begin with.))
Dear Mac users,
We're very sorry that unenlightened members of our organization have ported this abomination to your platform. I'm quite sure that you understand that large organizations often have rogue elements working against the organization's best interests from the inside. I assure you that we're working tirelessly to end the Java scourge. In the meantime, we offer our most sincere apologies not only to the Mac community, but to everyone who has been forced to use a Java application throughout history. Hopefully, with your help, we can cleanse the world of Java and make computing a more enjoyable experience for all.
Thank you for your time,
Sun Microsystems
More to the point, why did you waste this time clicking and commenting on a story which clearly doesn't interest you? Not everything on Slashdot exists purely to please you. Or does it really offend you that much to see a story about a platform other than your own?
And tomorrow the stock exchange will be the human race
I was about to say that this matters to the Java Fanbois, in the hope that they would finally get to play with the Java 6 features now that they're supported on the major platforms. "Doesn't run on Mac, must run everywhere" is a very solid argument against moving to Java 6.
As it happens, I must be new here, and I accidentally read the article.
Sadly, a Java 6 app still doesn't run everywhere. According to the Update, it'll only run on 64-bit Intel Macs with OSX 10.5.2 installed. If Apple doesn't do something about that fact, this update really doesn't mean much for anyone interested in developing for broad market deployment. This will only affect the tinkerers that happen to be running the latest version of OSX on 64-bit hardware, or developers that are fortunate enough to be able to target an audience that uses modernish technology.
So, nothing to see here unless you're a bleeding-edge Java+Mac fanboi. Granted, that particular market segment has gotten the shaft for far too long. It's good to see at least a small step in the right direction.
And how is that worst than major enterprises blindly using defective Microsoft products?
All Macs have been 64-bit for quite a while now. The G5s were 64-bit (but that doesn't really matter, since this update is only for Intel Macs) and the only Intel Macs that aren't 64-bit are the original run of Mac Minis with the Core Solos, and the first iMacs with the Core Duos. All Intel MacBooks, MacBook Pros, and Mac Pros are 64-bit, along with any iMac since late 2006.
Computers allow humans to make mistakes at the fastest speeds known, with the possible exception of tequila and handguns
Well, somebody had to post. All of us Mac guys were too busy running our critical Java 6 stuff.
Slight correction... there were MacBook Pros on the market originally with Core Duos (32-bit); it's not just relegated to consumer desktops.
For the last time, PIN Number and ATM Machine are redundancies!
I'm not sure which macs are 64-bit, but I can certainly tell you the Macbook Pro I'm typing this on has a 32-bit Core Duo, which is annoying as I would really like to be able to install this update.
Combination - fun iPhone puzzling
Um, no, anything using a Core Duo is 32-bit, which means the first gen of all Intel Macs with the exception of the Mac Pro. The Core 2 Duo was a 64-bit CPU, not the Core Duo.
One question might be, with all the java hype of being able to write once and run anywhere, why wouldn't they buy into the universal binary format?
What reaaly bothers me about Apple is that their support for anything that doesn't come out of Cupertino seems to be either designed to bait end users into moving to Macs than anything else.
When Apple brought out OS X in 2001, it was all smiles as the system came with free developer tools, a Java-Cocoa API that allowed you to use Java to write native Cocoa apps as well as a C/C++ API that also allowed you to write native Mac apps.
The problem was that the Java-Cocoa api was buggy from the start, apart from having very slow response on a, at the time, very slow user interface. Apple never fixed some of the worst bugs in critical objects (PDF objects for example), and finally, in 2005, dropped further development for the Java-Cocoa bridge altogether.
Last year, Apple dropped further development for the C/C++ API, which is having a major impact on big applications like Adobe's Creative Suite, which now have to move to Apple's in-house Objective-C api.
The overall impression that I get is that Apple is only paying lip service to anything that doesn't come from Apple itself. Apple was known for this in the 90s and there was an acronym for that: NIH -Not Invented Here. This is also Microsoft suffers from, in its Embrace and Extend strategy.
This had serious repurcussions for Apple in the 90s and I, as a long time Mac user worry if it won't happen again. Java6 was available for other platforms over two years ago, and now Java7 is even almost here.
Seriously, if you're a Java developer, is there any actual reason to use Mac OSX? You're far better off using Eclipse on Linux.
Some of us can't afford the newest machines. But we did pay for your 200% profit margin. Please don't forget us!
I know there are 32 bit PPC macs, but I thought that all X86 macs were 64 bit, since they started with the core 2 duo systems.
What models of macs came with a 32 bit OS? Or are they simply referring to mac os 10.4, which I believe had some 32 bit support, but didn't have all API's (like cocoa) available in 64 bit versions.
You're a terribly shitty spammer. Hell, you can't even spell "programming".
"You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time."
It's been 18 months since Apple started selling only 64-bit Intel machines. (The MacBook went Core 2 in November 2006) That's not "quite a while". Only the most bleeding-edge-must-have-it-now nerd wouldn't balk at upgrading his rig more frequently than every 18 months.
Maybe it's that I'm not idiot enough to use this kind of idiot proof setup?
The first-gen MacBooks were just Core Duo, and of course that's what I've got :(
We do have an app at work that requires Java6, so I guess I have to keep booting up a Parallels VM to run it.
I hate to bait you, but an appropriate comeback to that would be: Whereas as everybody else was running their critical Java6 stuff 2 years ago.
There is a real problem at Apple with Java. Java6 was in beta 2 years ago at Apple, and has only been released in a crippled form for OSX, now. The thing is, Java7 is already on its way for the rest of the world.
What do you mean nobody really cares?
I don't have a Mac, don't intend to buy one, yet I do care. Its about fucking time the fruit got support. Now when are they going to have support for AROS?
If someone is passing you on the right, you are an asshole for driving in the wrong lane.
Microsoft's support for Java on Windows theoretically ended in 2007, and if you want to run Java apps on Windows you go to http://www.java.com/en/index.jsp and download Java.
If you're on Linux and you want to run Java apps, you go to the same place and download an RPM.
On Solaris, of course, you go... guess where... and download Java.
Last time I installed it on FreeBSD, I used the Linux binaries in Linus emulation mode. There's a FreeBSD Java project now.
And Sun has recently announced that they'll be supporting Java on the iPhone.
But if you have a Mac, Sun tells you to bugger off and ask Apple.
I'm sure there's some good historical reason for this weird exception, but given that Sun's supporting Java on much smaller platforms than Mac OS X, wouldn't it be in Sun's interest to take on the Mac as well if whatever legacy business agreement with Apple isn't working out? If they did that, then possibly it'd even become possible to get up-to-date Java support for older versions of OS X.
How about it, Sun, are you willing to put your programmers where your mouth is?
If you comment on a story and not say anything relevant to the story but instead deride a broader concept, isn't that textbook trolling?
My MacBook Pro is not 64 bit!
Win a signed Stephen Carpenter ESP Guitar from the Deftones: http://def-tag.com/?r=0008781
The MacBook, the MacBook Pro, the Mac Mini, and the iMac all shipped with a Core Duo model initially. The only model that didn't is the Mac Pro. Oh, and Xserve....
Check out my sci-fi/humor trilogy at PatriotsBooks.
What new Java 6 features?
There's a reason Apple didn't bother hurrying to bring out Java 6: all the "new features" are related to library changes, and not language changes. And since the API changes in Java 6 are all worthless, there's no reason to use them.
The place I work is still using Java 5 under Windows XP, because there's absolutely no reason to upgrade.
"This update can only be installed on a 64-bit capable Intel Mac."
Apple has a history of denying new versions of Java to any previous version of the OS. (See Java 5 & 10.3)
Frankly I was amazed that Acrobat 8 Professional requires Mac OS 10.4 when it only came out 18 months after 10.4 was released. (But then perhaps Apple was paying Adobe a little bit under the table to help strongarm Mac owners into coughing up their $129 upgrade fee.) And of course Office 2008 requires 10.4 as well.
I have a hard time believing that the OS changes so fundamentally from one version to the next that apps can't be reasonably ported. I guess the only reason legacy versions of Windows enjoy so much support is simply because of the vast amount of market share Microsoft enjoys.
Makes me glad I use a free operating system and free software, still annoying as fuck supporting my users though.
Long term, Apple is probably doing what is going to be best for Apple.
I have been really heavy into Java development from the start. But you know what? I can see that Java desktop apps are always going to be a smaller subset of native apps. There just is not widespread adoption to date, thus the greatly diminished focus on keeping the Java->Cocoa bridge healthy.
As for the Carbon (what you incorrectly label C/C++ API's), well Apple said all along that the plan was to transition to Cocoa, and that Carbon was a bridge to that end. It's true that Adobe got rather screwed in particular in that at a crucial point in time they were told Carbon was going to last a few more years than Apple is saying it will now. But Adobe also had a really long time to work on a Cocoa port.... note that Lightroom has no issues in that regard. That was unfortunate for both Apple and Adobe, but in the long run it's going to make everyone switch to a single API sooner which means more support can go into maintaining and improving one API rather than two.
As a side note, just because Cocoa is more of an Objective-C API doesn't mean you can't easily call it from C/C++ code.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Alternatively, the FreeBSD port of Java seems to run on Leopard:
What's the current license situation with Java, anyway? I thought they had gone to a real open source license, but the interstitial license page for the "Mach 1" download implies otherwise. Is this something else that Sun could be doing a better job of clearing up?
Ask Apple. As far as I remember, Apple holds the keys to Java on OS X, not Sun.
The "Universal" Binary format is currently only usable in the OSX Universe. It doesn't actually run on Windows or Linux right now.
.app files with your custom VM in Windows, add UB support to the Linux kernel if it's not already there, and see if you can teach OSX to support a new format in its Universal Binaries. The market will decide to adopt if they really want it.
Granted, it is probably be possible to write it in to the Linux kernel, or to add some kind of custom classloader into the VM itself, but the benefits would be minimal (although moderately cool). You could save yourself the trouble of writing three custom shell scripts that launch Java with your desired arguments. I'll grant that's a rather nice goal, but it's pretty low on the Shiny/TODO list.
Still, Sun doesn't need to buy into the Universal Binary format at all. The JAR format is well-supported, backward compatible, and easy to build/extract/modify with standard tools. I would venture to say that it's actually "Universal" given the number of systems that JVMs run on.
If you really think it's a good idea, I'd say that you should read up on the Universal Binary spec and add a loader to the open-source JVM. Associate
Please, for the love of god, stop using the word "fanboi." It makes you look like a pretentious twat.
Java 6 on Windows is much prettier. The fact that it has proper font-antialiasing alone was more than enough reason for me to switch.
There's also one nice feature I found in the Java 6 APIs: sortable table columns!
But yeah, for the most part there's not all that much in there for the developer to get excited about.
I've seen a couple threads in various places complaining that with Java 6 is only on the 64-bit Intel Leopard somehow Java is still not a great platform for Macs. But I've got Java 1.4 and 1.5 on my 32-bit Mac Mini and Java apps run fine. What features are in Java 1.6 that are so critical? I heard something about applet loading being a bit more intelligent, that might be nice for client-side web apps, but is there anything else?
Having used Apples for a while now I know that if you don't have the latest OS you are not likely to get all the latest and greatest. For hardware, you usually have to be on the latest chip, but they have been going out of their way to make the Power/Intel switch smooth, so this strikes me as odd.
Sorry for being unclear, the question was why isn't the application "java" a universal binary so that it can run on all Mac computers (the universe of Apple).
Most of the Java apps I've used recently (high-end, enterprise-grade stuff) have all been using Java 1.3.1_**. All the Java apps I've seen that try to be reasonably up-to-date with modern JREs all compile into native (Windows) binaries anyway.
Maybe you just have to be in the right situation to care, but I've never seen something that the JREs I've had couldn't run. Then again, I avoid Java like the plague.
Because the effective number of important 3rd party Cocoa apps ~ 0.
Do you think they like that? Do you think they like that when they ask people why they are in java is that the frameworks are better, the tools are better, the language is better, and they get cross platform too?
And meanwhile they keep adding java features into ObjC. But as an old Apple hand used to say, you can dress a pig up in a pretty dress, but its still a pig.
Apple is responsible for providing java on OS X, not Sun, and it is so by Apple's choice
That's a little self-referential. All you're saying is that this isn't Sun's job because this isn't Sun's job. We know that, friend, we've known that for years. The problem is that Apple's support for Java has been lukewarm at best for years now, with Apple's Java generally coming late and only for the latest version of OS X... and the scope of their "OS X integration" has been scaled back as well.
My point is this: Apple really has no stake in providing Java for the Mac. They do it because there's demand for it, but it's not important to them, and while depending on them for Java on the Mac is not quite as daft as depending on Microsoft for Java on Windows proved to be, it's probably not a good idea for Sun to depend on Apple for the long term.
Which is why my message was titled "Why isn't this Sun's job?" and not "This is Sun's job".
How does the age of the OS affect anything? Shouldn't we only care about the usability / what the OS supports in that case? Why would we want a new OS if all it is is bloat?
Can you run ANY current OS X software on OS X 10.0? Most people run XP, who cares how old it is as long as it can do anything you want? The only kind of missing point in it which I can think of is lacking 64-bit drivers and DirectX 10. What more prevents anyone from using it?
I think it's ok to compare Vista with Leopard to thought. I would assume Vista would work ok aswell, have never used it. But I would have no need for it either since sort of no games supports Direct X 10 either so who cares? It's not like I'd miss out on much if I installed XP.
I don't see your point? So one add additional bloat on the OS just to make it heavy on the latest and greatest hardware or what? What does Leopard offer which XP don't? What makes it more acceptable?
If anything I can only see an old less resource intensive OS which does all you want as something GOOD, not as something bad.
all the java hype of being able to write once and run anywhere
Hello, 1998! This is 2008 calling, how are things?
Let's see... ... type of format...
;)
What are universal binaries?
Universal binaries typically include both PowerPC and x86 versions of a compiled application. http://en.wikipedia.org/wiki/Universal_binary/
Hey, they're just precompiled stuff! That's a really great idea!
Let's use square wheels too! Sounds great!
Do you even know what you are talking about?
When i give you a copy of a program in universal binary format, all I'm really doing is giving you two copies: one for x86, and one for PowerPC. It sucks if you want to use it on your casio fancy calculator, because that just happens to be neither of them. Properly porting the program would mean including compiled code for each and every specific architecture. Guess what. I'm not going to do that. The other option being emulating one of those (presumably mandatory) implementations, starting the emulator, running the proper binary in there, and using it. Guess what. That's a shitload of work *and* a severe performance hit. Compare to java which is starting the 'emulator', running the (only) binary in there, and using it, makes it seem that that option is already covered by java. Moreover, the latter probably has much better performance because any performance trick which might work on a x86 architecture could be severely screwed by the emulator for the universal binary.
And the JVM has a proper model: you're not programming on an x86 architecture, you're programming on a JVM which is both specific and platform independant. Catching bugs in a program is easier if you *know* where the seperation between 'emulator' and program are.
Universal binary format sounds like a fancy name from marketing to misguide people. Apple Archive would be a more decent name. Extension AAR
I use to write java code and I was considering a used macbook as a laptop back in 2006.
.Net and Java I decided to stick with a PC.
Java is the most popular language in business today and it has surpassed even c and c++. WIth Windows supporting
Apple lost and even Linux is ahead with its must smaller marketshare because of its support for Java.
Apple is supporting more and more proprietary standards and is making life difficult for software developers. In the end we are going to see more and more windows based apps if it does not get its act together.
As much as I dislike Vista at least I can run frostwire, netbeans, eclipse, and VS.Net.
http://saveie6.com/
College-Pages.com - Online Colleges, Degrees, and Programs
Just to be clear, I was asking why I couldn't run it on my PPC. Since the idea of java is that it can run anywhere, it seemed odd to me that the java runtime would not work on all the Apples that are supported for OS X.
If you are going to do that, get it right. It's, "Hello, 2008? this is 1991, we want our joke back."
I read about this kind of behavior somewhere... something about subverting the goals/direction of groups/organizations.
The approach resembles the infectious spread of a virus.
One may join a group and slowly inject disruptive information into the group (eg. "he's really smart, BUT too into himself"... the part after the BUT is the viral payload... compliment and cut... compliment and cut...).
The idea is that over time, some other members of the group will (a) integrate the new opinion, and (b) begin making comments along these lines.
Slowly, over time, the character of the group changes, the goals of the group changes so as to integrate this new thought. The one(s) who introduced the payload may not even need to stay around at this point.
Like a virus.
A social virus.
Or in the case of Apple, buy a new entire computer every eighteen months.
If I recall correctly, the majority of Core 2 Duos share the same slots as the Core Duos, so an motherboard replacement wouldn't be necessary unless one wants a faster FSB. Unlike the Macs, you could keep the rest of the parts, so a few hundred dollars for a new CPU for this upgrade isn't out of the question.
For that answer, you have to ask apple, they decide what lives and what dies.
A core duo is really cheap on ebay. The upgrade is not simple, but worth it. In my case I neede a VT-X enabled CPU for parallels.
Mini CPU upgrade
-- "As a human being I claim the right to be widely inconsistent", John Peel
As someone who bought the early Macbook Pro with the Core Duo, I'm pretty pissed - the only way I'll be able to use Java 6 on this thing is to use Parallels or go to dual boot.
Was there REALLY any reason to restrict it to just he 64 bit machines?
I wish Sun would to the Java ports on Apple, we'd get better support that way...
that is a wise decision. Windows is premier development platform with all technologies available (from Java to gcc to .NET and all the other usual scripting languages). Couple that with a good Unix shell (like cygwin or MKS Unix toolkit) and you get the best of any platform.
I would switch to Mac only if your objective (lol) is to develop in Objective C for that platform only.
As the island of our knowledge grows, so does the shore of our ignorance.