Slashdot Log In
Sun Releases First GPLed Java Source
Posted by
CowboyNeal
on Fri Dec 22, 2006 06:21 AM
from the beginning-of-an-era dept.
from the beginning-of-an-era dept.
An anonymous reader writes "You can now get GPLed JVM sources from Sun. Everyone seemed to be expecting the desktop version (J2SE) but J2ME has been released first. It looks to be buildable for Linux x86, MIPS, and ARM platforms. Sun now calls it 'phoneME.' Enjoy."
Related Stories
[+]
IT: Sun Completes Java Core Tech Open-Sourcing 141 comments
MsManhattan writes "A year after announcing its plans, Sun Microsystems has made almost all of the core technology in Java available as open-source software under the GNU general public license version 2 (GPLv2). However, some of the code remains 'encumbered'; that is, Sun doesn't have sufficient rights to release it under GPLv2, and the company is requesting the open-source community's help in resolving these issues. Rich Sands, community marketing manager for OpenJDK community at Sun, would not say what percentage of Java's 6.5 million lines of code are encumbered, but explained that it is largely Java 2D graphics technology, such as font and graphics rasterizing."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading ... Please wait.

And if you want to play with it now... MIDPath (Score:5, Interesting)
And people already started hacking it and combining it with all kinds of interesting existing free java projects to product MIDPath [thenesis.org]
Seems the GNU Classpath, Kaffe, GCJ, etc projects really want to Collaborate [wildebeest.org] and work together [wildebeest.org] with Sun according to their latest release notes [gnu.org]. 2007 might be a pretty interesting year for Java and GNU/Linux (and mobile devices!)
Re: (Score:2)
Re: (Score:3, Interesting)
What? (Score:2, Funny)
Re: (Score:2, Funny)
No, I believe "ME" stands for "Millennium Edition".
Its 7:00 AM and its slashdotted (Score:2)
Its not responding. Are there really enough slashdotters awake at 7:00 AM (EST) to bring down something from Sun?
Or is it just so large that the two people that are downloading it are now sucking up all the bandwidth?
In any case, anybody have a torren
Re:Its 7:00 AM and its slashdotted (Score:5, Insightful)
Re: (Score:2)
Re:Its 7:00 AM and its slashdotted (Score:5, Insightful)
Re: (Score:3, Informative)
Re: (Score:3, Interesting)
Says who? Show me something that says more than 50% of Slashdot visitors are in the U.S. please.
And how do you figure
Re: (Score:2, Funny)
Re: (Score:3, Informative)
Congratulations to Sun and Thank You. (Score:5, Interesting)
They are freeing up the crown jewels, and the significance of that fact should not be underestimated. Free as in 'gratis' and free as in 'libre' [wikipedia.org].
I am not a Sun employee, but I am a Java dev., and I would like to remind people of Sun's contributions to open source over the years. While the press communications of executives have muddied the waters, Sun have done more in the past for open source than a certain "Think Free" company. That company pressed for open sourcing Java and then bitched about the choice of the GPL.
I would love to see the source to Websphere (not the Geronimo 'Websphere' product, but the real deal).
Re:Congratulations to Sun and Thank You. (Score:5, Insightful)
As far as I'm concerned: the short-term impact of this will be decent as people start getting their teeth into the source (as they have done since November), but the long-term impact will be fucking huge. I don't have a lot of personal experience, but this announcement combined with the fact that so many CS degrees start with OOP by teaching in Java means that people will routinely be encouraged to appreciate the power of FOSS from the start, before they get used to the limitations that its absence imposes.
To reiterate: This-Is-A-Good-Thing.
Re: (Score:3, Funny)
Re: (Score:2)
Re: (Score:2, Funny)
Negotiable at all? I have a bag of magic beans here. Would they take them?
When you apply
Something real good I guess! (Score:3, Interesting)
requirements: (Score:5, Informative)
* Red Hat Linux distribution version 7.2 - 9.0
* Java 2 Platform, Standard Edition (J2SE(TM)) Development Kit (JDK(TM)) version 1.4.2
* GNU Make version 3.79.1 or later
* GNU Cross Compiler (GCC) 3.4.6 or later
* Doxygen version 1.4.1
* Development Kit for the Java Card(TM) Platform 2.2.1
To set up the Linux/i386 build environment, you must do the following things:
* Acquire Monta Vista Developer Tools
* Set Linux platform environment variables
Acquiring Monta Vista Developer Tools
To build phoneME Feature software for the Linux/ARM (P2 board) target platform, you must acquire the MontaVista CEE 3.1 ADK developer tools. [mvista.com]
Re:requirements: (Score:5, Insightful)
Nearly everything is targetted toward Monta Vista, these days. Being fair on them, it's because they were one of the few embedded Linux distributions that managed to put together something with all the neccessary patches to be actually capable of performing well in an embedded scenario.
Thank you Sun (Score:5, Insightful)
Re:Linux is great and all (Score:5, Funny)
And I also want this running on the Super Nintendo this time tomorrow, *snap *snap
Re:Linux is great and all (Score:4, Interesting)
To be serious for a moment, I honestly hope that this encourages ports to the Wii, XBox 360, and PS3. Java is an extremely capable game programming language at this point, and could potentially save programmers a great deal of development and debugging time. In fact, the only thing that's been holding developers back from using Java is that it doesn't port to the major consoles. If that were to change...
Re: (Score:3, Informative)
Blu-ray spec requires that all Blu-ray players have Java(J2ME, JavaTV API, etc.) due to future interactive menus, bonus material, etc will be done entirely in JAVA.
This is the core r
Re: (Score:3, Interesting)
More precisely, you'd just need the development kit. (Which, granted, is a pretty exclusive club.) Sony
Re:Linux is great and all (Score:5, Insightful)
Mono is comparable, yes.
However, Qt, GTK and wxWidgets are all just GUI toolkits! You still need a programming
language (Pascal, C++, Perl, even Java(!)) to use these. Installation will be easier,
though. I'm personally looking forward to "apt-get install sun-java" or somesuch.
Also, it will soon (when J2SE comes out) be possible to write better integration with existing
apps, such as better (faster, more modern) browser applet plugins. That, I'm looking
forward to.
(Oh, and now that the sources aer GPLed, it should be really easy to make this thing run on *BSD if it doesn't already)
Mono is not compareanble either (Score:5, Insightful)
Sure,
Re:Mono is not compareanble either (Score:5, Funny)
Sure,
Re:Mono is not compareanble either (Score:4, Funny)
Re:Mono is not compareanble either (Score:4, Informative)
I (as a contractor) come to a customer site, and see crappy Swing-specific code written. Its usually the developer not knowing how to deal with multi-thread programming (event dispatch thread, etc.). I rewrite the app, it goes into production, and the user base loves it. They click on a single web link to start their app, and automatically get updates when new versions come out. They can run it on multiple OSs too (music industry companies use lots of Macs (for example)). Its performance is comperable to other apps running on their OS/desktop.
Java (and Swing, or if you prefer SWT) is more than fast enough to do the job, is very powerful and is allot easier to write to than 3GL languages. But like with any tool (or weapon), you need to know how to use it to use it effectively. And that can be said of any computing language, both 3GL and well as 4GL.
I don't mean to be insulting, but it seems like you really don't know what you are talking about. I would even argue that (especially for businesses) it is the BEST choice of language to write applications in. No idea about using it for writing a game and such, but if you're looking for a 4GL (PowerBuilder) type replacement, its the best out there (even though its really a 3 1/2GL language).
Re: (Score:3, Funny)
Re:Mono is not compareanble either (Score:4, Insightful)
Comparable means you can compare the two things - one might be wonderful and the other total shit, but they exist on the same spectrum.
Apples and oranges are (canonically) not comparable because they're different fruit, so they have different criteria to be fairly judged on.
You can compare a nice apple with, say, a shitty, maggot-ridden one - they both have the same criteria, so comparison is valid.
So, on the basis they're both managed programming environments, both compile to bytecode, both tackle the same kinds of tasks in a similar way, you can compare Mono,
You might believe one is better than the others, but that doesn't make them incomparable.
Re:Mono is not compareanble either (Score:5, Informative)
Man
Re: (Score:3, Insightful)
Re:Mono is not compareanble either (Score:4, Insightful)
.NET and Java in the enterprise (Score:5, Insightful)
It's kind of amusing, when you think about it, that what Sun really got out of their lawsuit against Microsoft for their (really, really minor, especially relative to stuff like what Netscape did) modifications to Java was a pure competitor in .NET.
You mention .NET's ability to easily (I'd say "relatively easily") link to native code as a big detriment, but in many .NET implementations that's not used at all. It's easier to work with disparate code like that through a SOAP or database interface. In practice you see a lot of .NET front-ends to traditional servers via a SOAP integration. You see less of it used as a replacement for traditional MFC code, the kind of thing where such integration would be most useful.
But getting back to the enterprise, .NET's largest problem in terms of enterprise software is not that it's less mature than Java (in many ways I'd say that Microsoft took the good stuff from Java and improved it a lot) but rather that it's locked to Windows. Maybe you haven't noticed, but Windows is not a very good server operating system -- not very reliable, not very fast (except in very specialized situations), certainly not scalable. It's all very well and good that you can drop a couple of hundred boxes in there to scale to huge applications, but when you could run the same application on a single Sun you're really not making a cost-effective choice. (I wish I were making that up, but it is actually pretty typical to be able to replace as many as 100 Windows servers with a midsize Sun or two, and that is true not only of stuff like IIS/ASPX versus Apache/whatever that are differentiated by more than OS but also for directly comparable stuff like databases and ETL). Push Windows hard and it will break, often. It's nuts to put it in critical places (although that is done, a LOT, and people pay the price in ongoing maintenance).
Having said that, .NET is probably the single best GUI implementation framework I've seen yet (although that may be damning it with faint praise), and Windows, at least aside from the malware issue, is a pretty fine desktop. In that domain it shows what Java could have been if Sun had been even remotely competent (rather than giving us stuff like AWT and the Swing abomination). We're going to see a lot of .NET on the desktop because it is pretty much best-of-breed. More power to it.
Java is today, and has been since at least the late '90s, often used in enterprise situations. Whether or not it's appropriate in a lot of those situations is debatable, but it is deeply integrated into the core operations of a lot of companies at this point. Personally I feel that JMS is not very good at its job and J2EE as a whole is a steaming pile of dung designed by people who wouldn't know a good application architecture if it ran over their foot, but Java as a whole and these things in particular are out there and being used by a lot of people -- and at least in some cases doing a good job.
It is certainly possible to build robust, reasonably efficient large-scale Java applications. It is even easier to do that in Java than it is in C++, especially if you avoid some of the more ridiculous parts of J2EE. But that doesn't mean it's easy to build that kind of thing, and as you might expect there are a large number of really awful Java applications out there (just as the majority of large applications built on all the other languages out there are really awful). It is not surprising, therefore, that there are people who think Java sucks for that kind of thing -- because, from what they've seen in practice, many Java-based applications do in fact suck.
Anyone with broad industry experience knows that you could replace "Java" in that last statement with any technology you please, though, so that isn't really a measure of whether or not it's a decent technology for the task. It seems to me that people have been somewhat more effective at building large-scale applications in Java than in its precursors, but admittedly I never did a scientific survey to verify this opinion and maybe it's the result of having gained experience in previous failures that allows more Java applications to succeed.
In summary, I think we're going to see .NET limited in its impact in the enterprise mostly by the fact that Windows isn't very well suited for large-scale tasks; in and of itself .NET is remarkably mature, owing largely to the fact that it started out life as a Java reimplementation. If Microsoft were to deign to support other operating systems they'd have a smash hit in that domain, given that their tools are rather nice (relatively speaking), but it's probably not in their best interests to do so and I don't expect to see it anytime soon. Java will be with us in the enterprise for a good, long time because for the most part it does a decent job at it, or at least a better job at it than many other languages (particularly C++). We can only hope that the upcoming trimming-down of J2EE makes those applications less balky.
Re: (Score:3, Interesting)
Re:Mono is not compareanble either (Score:4, Informative)
> Actually, I do, and I am forced to work with the steaming pile all the time
I fall into the "work for a Telco and have to deal with steaming piles of java" category as well. Yes, the developers have something to do with it, but its also the Java mentality of those developers, as well as a few wonderful quirks of the language and its environment. For starters, it seems, for our dev team at least, anything can be done in the Java world if you throw enough $$ at a "platform" or "Framework" and then spend the next several years with large teams of developers and outsourced help (India) to find that the platform/framework you bought cant actually do anything you bought it for (buzzwords), so another one must be bought to solve all the problems (rinse/repeat). They also like to over develop stuff, writing full-blown "feature" filled aps where a single line of cron and/or 5 lines of perl would suffice, and spend the next few years debugging it and restarting it every time it crashes (nightly for most). Java has also somehow managed to become the ONLY SOX compliant language in the eyes of management, possibly due to the dev team, requiring SOX related stuff (which becomes whatever someone feels is somewhat related to SOX in any remote fassion) to be put into a Java wrapper if its not already Java based so that their Java platforms can tickle it all they want.
As for the Java platform itself, one of the most common things done in my group (system ops) with systems is restarting Java aps and Java engines. Why? The ap breaks or tickles some Java bug. One nice feature in Java (or Tomcat or JBoss) we know about because of specific breakage it causes is that it keeps its own cache of DNS. The only problem being it ignores TTL and the whole thing has to be reloaded to refresh that cache. Then there are the other Java bugs that cause breakage to the bewilderment of our dev team. Load a page, it works, go back and try again a few minutes later and it crashes. Most likely a poorly written ap causing some memory buffer to overflow, but wasnt Java written to handle that sort of stuff internally so the app dev team doesnt have to worry with it??
People might see it as Enterprise App worthy, but I think it has long gone the way of PHP, where most developers have gotten lazy and sloppy. I have used it in the past, though I currently use Perl for a good number of reasons. Like any language, it has its place.
Tm
Re: (Score:3, Interesting)
Re: (Score:2)
Re: (Score:2)
Slightly offtopic, Etch seems to have lost support for OpenMotif. I used to install this and
then the Citrix ICA Client for Linux. Well that doesn't work anymore.
But, installing Sun Java,
Re: (Score:3, Informative)
Have you actually tried to compile it? I compile for my architecture (64) all the time with things that aren't made to support it. Sometimes I have to make small changes to strings, but it can't be THA
Re: (Score:2, Insightful)
Re: (Score:2)
Re: (Score:3, Insightful)
Sun did what nobody expected, opensourced its greatest (both in terms of size and of completeness)
Re: (Score:3, Insightful)
Re: (Score:3, Insightful)
Re:Quality of the code? (Score:4, Insightful)
Re: (Score:3, Informative)