Sun to Change Java License for Linux 226
daria42 writes "It looks like the days of downloading Java every time you re-install a Linux box may be at an end. Reports are trickling in that Sun plans to alter the Java license to make it easier to bundle the JRE with Linux. From the article: 'Sun has faced calls several times to open-source Java, which advocates say would foster innovative open-source development. The company has resisted formally open-sourcing all of the Java software, but it has dramatically changed the development process around Java and changed licenses to make it easier to see Java source code.'"
Finally! (Score:4, Funny)
I'm sorry...
Re:Finally! (Score:5, Funny)
Well I do declare! (as grandma said) (Score:4, Insightful)
Java, due to MS's efforts to subvert it, is probably the hardest to free up, but this is a good, workmanlike step in the right direction.
--dave
Re:Well I do declare! (as grandma said) (Score:2, Troll)
If anything, I think the Sun vs. MS war on Java shows why an open reference implementation can strengthen a standard.
Re:Well I do declare! (as grandma said) (Score:5, Insightful)
Sun engineers, on the other hand, arguably agree with your desire to move to free reference implemntation, and in the short term, to fewer restrictions on the JRE.
--dave
Re:Well I do declare! (as grandma said) (Score:3, Insightful)
Re:Well I do declare! (as grandma said) (Score:3, Insightful)
and no, im not a sun fanboi, but i am primarily a j2ee developer.
Sweet... (Score:3, Funny)
Hard.. (Score:5, Insightful)
Re:Hard.. (Score:3, Insightful)
Re:Hard.. (Score:3, Interesting)
Re:Hard.. (Score:4, Informative)
%define xinclude %( if test -d
Requires: %{xinclude}/X11/StringDefs.h, %{xinclude}/X11/Xlib.h
Re:Hard.. (Score:2)
Official instructions are here [tldp.org], but you can google for every one in the worlds opinion on how it should be done.
RPM (Score:3, Informative)
This must be your lucky day [sun.com]. Sun has an RPM package for download; the self-installer generates the .rpm file.
Re:Hard.. (Score:5, Insightful)
Re:Hard.. (Score:5, Funny)
Re:Hard.. (Score:2)
Because downloading the JDK or the JRE after installing linux was hard?
If your distro installs the JRE, then it can use an updater written in the Java language for safety. If your distro installs the JRE, then Java will work even if the user can't get broadband without moving.
Re:Hard.. (Score:3, Informative)
Re:Hard.. (Score:3, Interesting)
The whole point of the "mumbo jumbo" is to get you to agree to the license terms. This is also the reason why the earlier versions of Firefox 1.5 (compiled, not the binaries) did not have the official branding enabled in Gentoo; it was a licensing issue. As soon as Gentoo got permission from the Mozilla Foundation to distribute the trademarked images in the source,
Re:Hard.. (Score:3, Insightful)
days of downloading Java (Score:5, Funny)
That's what you get for having a slow connection.
Re: days of downloading Java (Score:5, Funny)
But what about Windows? (Score:2, Funny)
Re: (Score:3, Funny)
Re:But what about Windows? (Score:2, Insightful)
This is a dangerous game to play - at what point does Microsoft stop supporting their customers for the sake of their business strategy? Some will say that that time came long ago, and that it is an implicit sign of anti-competetive, monopolistic practices. I disagree - as some could claim that Java is simply not ap
Re:But what about Windows? (Score:2, Informative)
Re:But what about Windows? (Score:3, Informative)
Re:But what about Windows? (Score:3, Insightful)
I've seen Win32 apps consuming 150Mb of RAM.
If Sun were to open source Java it could open the door to different, better JVMs that might even be able to spoof itself as "Sun JRE" for the myriad of poorly written Java apps that refuse to run on anything else.
Re:But what about Windows? (Score:3, Informative)
When was the last time you came across a Java program that required the Sun JRE? I exclusively use the IBM JRE on Linux, and have never had a problem with compatibility.
slackware has jre in 10.2? (Score:3, Interesting)
jre-1_5 [slackware.it]
Comment removed (Score:4, Interesting)
Re:slackware has jre in 10.2? (Score:5, Informative)
most debian/gnulinux software is either gpl/lgpl or bsd (or alike) licensed, can be distributed without any restrictions just about anywhere. the license of java which you are supposed to read and accept while downloading and installnig, differs a lot from the "free as in beer" or "even more free than beer" licenses mentioned above.
for the commercial distros - no idea, but possibly the same issue.
Re:slackware has jre in 10.2? (Score:5, Informative)
That means that you can't also distribute e.g. gcj or GNU Classpath. The license isn't exactly clear on whether it means that you can't distribute Sun's JRE together with gcj or whether distributing Sun's software means you can't distribute gcj at all -- ever. It's also not clear exactly what they mean by "software intended to replace any component(s) of the Software". In the worst case, that could apply to any software that performs the same function as some part of the JVM, the byte compiler, the class library etc. Does distributing Swing mean you can't distribute GTK?
Re:slackware has jre in 10.2? (Score:2)
It was moved to the official, standard set of Slackware packages in Slackware 9.1:
Re:slackware has jre in 10.2? (Score:2)
SuSE 10 also includes the JRE by default.
We already have open source Java (Score:5, Insightful)
If there are areas where the specs need improvement to get closer to the "Write Once Run Anywhere" goal, by all means complain about those areas.
We want multiple competing implementations, both open and proprietary. That said, I could see Sun open sourcing the Java libraries - at least the Java parts. The SDK comes with Sun source for the publically visible parts of libraries. However, the licence precludes using that source in an open source VM. Instead, the GNU classpath project has to rewrite them from the spec.
Keeping the Sun VM proprietary but opensourcing the libraries seems like a good compromise between maximum interoperability and competition.
Re:We already have open source Java (Score:2)
Re:We already have open source Java (Score:3, Insightful)
* A standard which is well defined, whose license can not be arbitrarily terminated and is provided to everybody free of charge or at a reasonable cost. (This is the most important one)
* An open sourced reference implementation of that standard, prefereably released under the BSD licence so anybody can extend it. (This is nice but not crucial)
* An open standards process. (If the standard is stable and well written, this is not all that impor
Re:We already have open source Java (Score:2)
Re:We already have open source Java (Score:4, Insightful)
Re:We already have open source Java (Score:2)
which can be a problem for some Linux users (such as CS students like myself)
As a CS student you should be able to get the sun JRE/JDK going on your linux box. (I speak as a former CS student who just did it... (again)...) I found it took about an hour to find useful instructions and less than five minutes to follow them.
That being said, I agree that having the option of installing a real sun JRE/JDK with apt-get or rpm WITHOUT dropping to the command line or hacking configuration would be a BIG bonus an
Re:We already have open source Java (Score:3, Insightful)
apt-get install java-package
fakeroot make-jpkg jdk-1_5_0_06-linux-i586.bin
sudo dpkg -i sun-j2sdk1.5_1.5.0+06_i386.deb
If this took you a whole hour, you are in BIG trouble my friend
Re:We already have open source Java (Score:4, Insightful)
As a former CS student *and* instructor, take my advice: run away from Java as fast as you can. I'm not saying it's a bad langage/environment or doesn't serve some audiences very well. But Java's like cigarettes, starting on them too early stunts your growth.
CS students need to learn as many different programming approaches and concepts as they can. Procedural languages (C et al), iterative (generators, Python/Ruby), functional (lisp), declarative (prolog), message passing, object oriented, generic programming, closures, static vs dynamic typing, etc. Breadth of exposure to different approaches is crucial to knowing what approach to take with real-world problems. This should be coupled with a depth of understanding of what the system does 'under the covers' at each level. It makes all the difference in the world when facing unexpected problems and differentiates a code monkey from an engineer.
Unfortunately Java covers only a couple of these areas and none of them particularly well. Standardizing classes on Java is one of the worst things a CS dept can do. If you're stuck in this boat, all I can suggest is play around with other languages every chance you get.
Re:We already have open source Java (Score:3, Insightful)
Which is exactly why it'll never happen. The giant Java library ensures that, even with a 100% compatible JVM, most Java applications will only run on the Sun runtime. (Especially applications that use "sun.*" or "com.sun.*" packages in open defiance of Sun themselves saying not to do that. But that's beside the point.)
Sun learned from their experience with Microsoft
Re:We already have open source Java (Score:2)
Yeah because being feature-rich is an outright intentional action in order to stop people implementing compatible Java runtimes and class libraries.
Wasn't there a day in the past when you got some software and thought "wow, it does everything I wanted it to", instead of "OMG this has too much relevant stuff. I wish I would have to code it myself. I
Re:We already have open source Java (Score:5, Insightful)
MS added classes to the java.* package hierarchy, in contravention to the terms of their licence. That's why Sun sued. Had MS put their classes in a com.microsoft package hierarchy like you're supposed to, Sun wouldn't have cared (or had a leg to stand on).
The restriction was/is in the licence to prevent exactly what started to happen - people started using the classes, and thus were writing code that could only run on MS's VM, which is completely against the core Java ethos of "write once, run anywhere". (Ok, so in practice that's often easier said than done, but this was threatening to make it completely impossible)
For what it's worth, MS didn't have to stop shipping a VM with Windows; they just had to stop shipping their non-compliant VM. They were perfectly at liberty to remove the offending classes and continue developing a compliant VM. Instead they chose not to do so, shifting their efforts to
Especially applications that use "sun.*" or "com.sun.*" packages in open defiance of Sun themselves saying not to do that.
That's a really dumb thing to do if you care about cross-release compatibility. There's no guarantee whatsoever that classes that are present in one release will be present in the next.
Re:We already have open source Java (Score:3, Informative)
Sorry, but this is plain wrong. Most Java applications will run on any certified JRE of the appropriate version. That is the point of certification of the JDK and JRE! Even some of the lar
Re:We already have open source Java (Score:2, Insightful)
Re:We already have open source Java (Score:3)
...and perhaps the users of Debian *want* a completely DFSG Free distribution? There's room for both.
Re:We already have open source Java (Score:3, Insightful)
Re:We already have open source Java (Score:2)
And it is pretty good even if you don't. For example, there is an implementation of Hotspot for J2ME/CLDC that runs in 1MB.
Re:We already have open source Java (Score:3, Informative)
Bullshit.
No, it is a fact:
http://java.sun.com/products/cldc/faqs.html [sun.com]
"13.What is the CLDC HotSpot Implementation?
The CLDC HotSpot[tm] Implementation is a high performance, battery-preserving virtual machine that is compliant with the CLDC specification. It not only offers significantly improved performance over the KVM, but it also offers greater portability and faster time to market. The CLDC HotSpot Implementation is suita
Re:We already have open source Java (Score:2)
the problem is twofold.
1: the java.* and javax.* trees are bloody massive so reimplementing it all is a huge ammount of work
2: most java developers don't give a fuck about runtime environments other than suns and some of the platform isn't very well documented (just go and have a look at some of the stuff in javax.swing.plaf). The result is that most java apps only
Sun's commitement? (Score:5, Interesting)
Given this
If anything, this slows Java adoption.
Java was all the rage in the late 90s. Had they made it Free, I think it would have been a tour de force. Now we see competition from simpler technologies. We're learning that we don't need a J2EE infrastructure when a simple Model-View-Controller model with a database backend will do the job just as well, and so on.
Freeing Java would spread adoption, if nothing else than by including it in every distribution shortly thereafter.
This new license system isn't good enough, it'll just frustrate people.
Re:Sun's commitement? (Score:5, Funny)
(Luke Skywalker stands hands bound on the edge of a plank)
...but Java the Hutt will soon learn he's too sluggish as he is choked to death by Princess Ruby)
"Java! This is your last chance. Free yourself, or die."
(laughter
Re:Sun's commitement? (Score:3, Interesting)
There's nothing stopping you from implementing that MVC architecture in Java with a servlet container, of course - in fact, in my experience the vast majority of websites that use Java use it in exactly that way.
Re:Sun's commitement? (Score:2)
Re:Sun's commitement? (Score:2)
Re:Sun's commitement? (Score:2)
No, it would be much worse. Think back to the bad old days of Basic, where each vendor had their own version of the language. Think pre-ANSI pre-stdlib C++.
Re:Sun's commitement? (Score:2)
First, as many have pointed out Java is a trademark that Sun owns. They can control it. I can't fork Java and call it Java. I could maybe fork it and call it "Half-Skim Soy Latte" but that's not Java.
Considering how many Java alternatives there are already, I don't see it getting worse.
But there are plenty of languages with an official version other spinoffs. Perl and Python both have an official version and then spinoffs.
Re:Sun's commitement? (Score:2)
The Triad of DOOM! (Score:2)
Re:The Triad of DOOM! (Score:2)
Limits? (Score:4, Insightful)
Also, it's a shame it seems they're only going to include the JRE. Nice and easy for linux users to run java programs. Shame they won't be able to write any...
Re:Limits? (Score:2)
Java as electricity (Score:5, Interesting)
Forbes:
You're trying to woo customers with free hardware. How do you make them paying customers? You haven't monetized Java proportional to what's out there.
JShwartz:
That's a misnomer. Largely an American misnomer. Nearing 1 billion Java handsets.
Forbes:
So what's your Java revenue?
JS:
Close to $13 billion.
F:
That's not money in Sun's pocket, though.
JS:
It's like asking a company that produces generators how much of their demand comes from people using electricity. It's 100 percent.
F:
But it's about how many customers are paying you for the privilege of using Java.
S:
And I'll point out that a billion handsets fuels an enormous market in the telecommunications industry. Java running on Sun's Java Enterprise system, whether it's at American Express or General Electric or Vodafone, is fueling Sun's overall revenue. Asking us how much money we make on Java is like asking Verizon Communications how much money they make on handsets. The fact is that they lose a fortune on handsets, but they make a fortune in subscribers.
F:
So are you going to convert Java users to subscription service for Sun?
S:
Partially, we're already doing that. American Express runs on the Java Enterprise system. That's per employee subscription for core middleware for Sun. My broader point is that Java ensures Sun has access to an open market. Java allows us to reach out to customers who don't run on Sun hardware and ensure we can serve them wherever they may be--whether it's on a Dell box or HP box or in an IBM customer base.
Again, it's hard to explain to people. Here's an analogy. With the advent of electricity, Thomas Edison tried to patent a lightbulb so that you would have to use his lightbulbs if you used his dynamo. That strategy obviously failed. And what emerged was the standard plug. Asking Sun the value of Java is like asking GE--which is, I think, the largest manufacturer of power turbines in the world--what the value of the standard plug is. It ensures they can serve a global marketplace. So if you asked them what's the value of the plug, how would they respond?
Here are some stats on Java: There are more than 1 billion Java cards in the marketplace, securing everything from set-top boxes to handsets. There are more than a billion Java handsets, all driving demand for network infrastructure. There are nearly 1,000 members of the Java community process, who collectively contribute to the standard called "Java." It is the default standard for set-top boxes in Brazil. So what will the infrastructure opportunity be in Brazil to serve 100 million Java-enabled set-top boxes? I promise you it will be enormous, and Sun will be among many participants that can serve that demand.
Re:Java as electricity (Score:3, Interesting)
The interviewer, however, has a point that Schwartz did not address: It is equally clear that Sun could benefit more from Java.
Schwartz brings up mobile Java. Sun won by default: Qualcomm keeps their application environment on their chips, and Microsoft keeps their's on their OS. Schwartz has no answer to how this victory is monetized. There are some obvious missed opportunities in mobile commerce servers, for example.
If Sun
Re:Java as electricity (Score:3, Interesting)
Even when I did, my employers did not like having to provide both a Sun workstation and a Windows box for every developer.
I remember when a spreadsheet first became available for a Sun Workstation. It was called Wingz.
Since it was a "powerful unix machine capable of supporting multiple users" they decided to charge
about $1000 for a spreadsheet program.
So for a long time, Unix software vendors kept your av
micro payment opinion submission (Score:2)
Re:micro payment opinion submission (Score:2)
Re:micro payment opinion submission (Score:2)
Programs, getcha programs here! (Score:4, Informative)
I wish Java was more like CPAN (Score:5, Interesting)
The more I hear calls that Java to be more open source the more I wish all these Java libraries worked like the way CPAN does.
CPAN is great and its what keeps Perl relevant and it works well for the Perl community. All these java libraries bundled with the JDK should be more modular with a lean core distro and then the rest can be organized and installed as modules.
And like everything CPAN all these modules will be peer reviewed by other Java developers in the open source and corporate worlds.
Ah, one can only dream.
please no! (Score:2)
Re:please no! (Score:2)
ORM, RPC, IoC, and many other TLAs are only supported by third party stuff.
And that stuff gets installed using Ant or Maven...which are very difficult to get working right with a package management system.
Finally, the fact that Java packages are a lot more willing to change their APIs in minor versions than non-java packages are, and you have a portability crisis If you want to use two different java programs that use different versions of the same library, then you have to play monke
Re:I wish Java was more like CPAN (Score:2, Interesting)
So you mean that the distribution should decide which modules/classes it should omit?
That could cripple the standard platform of Java modules developers can depend on. It could cause worst-case scenario's like this one [plan99.net], quoting:
Re:I wish Java was more like CPAN (Score:2, Insightful)
Like Maven or like JPackage.org? (Score:2)
Do you mean you wish Java libraries worked like CPAN, in the way Maven [apache.org] and its automatic library repository works or in the way the JPackage [jpackage.org] repository works?
foster? (Score:4, Insightful)
Because there are so few innovative open source java projects right now? Heck, I can hardly keep track.
Leaving aside the politics of open source, and the "I can't play with your toys" argument, the main issue here seems to be the license incompatability that keeps Java from being bundled with the 267 different Linux distributions.
If people want to be innovative, how about working to unify the basic functionality of all those distributions, specifically one common, simple way that works on all distributions and architectures to install 3rd party packages, like, say, Java?
ObMetaDig: And besides, why do you care? Every time I see java on /., the whole thread seems to be "it's slow / no it isn't / GC sucks / no it doesn't / .NET rules / no it doesn't"
Re:foster? (Score:3, Interesting)
Re:foster? (Score:2, Funny)
Run-time, not development tools (Score:3, Insightful)
If they allowed redistribution of JDK compiler and libraries, we'd be making progress.
Nothing to see here. Move along.
re-install a Linux box? (Score:2, Funny)
64-bit? (Score:4, Insightful)
I'd Be Happy (Score:3, Interesting)
Three recent thorns in my side:
The Process object's destroy method sends a SIGINT or some such rot to the child process, which may or may not kill the child process. There's no way to send a SIGKILL, no way to get the PID of the process, no way to set the process group and no way to get or kill children of the child process.
There's no way to get OS-Specific permission settings on a File. For that reason if you try to archive some files in Java using an InputStream that takes Files, you'll lose the permissions settings on them and the files will restored with something both generic and useless like 644. They make a halfhearted attempt to address this in 1.5, but it's still useless.
It would appear that the only way to get disk space left on the volume is to open a file and start writing 1 byte at a time until you get an IO Exception.
It's deficiencies like this (And the ~50MB VM overhead) that make Java a poor choice for system programming tasks, but the robustness of the language design itself could be so easily changed to address these issues. The fact that it hasn't and that all of these issues have been around for over half a decade lead me to believe that Sun isn't really serious about the language and probably shouldn't be in charge of the standard, either.
Re:I'd Be Happy (Score:2)
Re:I'd Be Happy (Score:2)
Or put symlinks to common jarfiles in that location (my own preference).
Re:I'd Be Happy (Score:2)
Re:I'd Be Happy (Score:3, Informative)
I didn't realize I had typed etc instead of ext until I read your reply. My bad. Sorry.
Re:I'd Be Happy (Score:5, Informative)
It would appear that the only way to get disk space left on the volume is to open a file and start writing 1 byte at a time until you get an IO Exception.
These two are finally fixed [sun.com] in Mustang. I agree it has taken long though:
Why is the modification required? (Score:2)
I don't remember seeing anything in the GPL that says it can't share disk space with non-GPL binaries.
Is this what is meant by "choice"?
Re:Why is the modification required? (Score:3, Informative)
Re:Why is hypocrisy required? (Score:3, Informative)
The GPL doesn't require that; the developer of that installer did.
Re:Why is the modification required? (Score:3, Insightful)
What about OpenBSD? (Score:2, Funny)
Why not dual-license like OpenOffice.org? (Score:3, Insightful)
I wouldn't think that forks would be a big problem either, as everyone would likely stick to Sun's JDK by default. I certainly haven't run into IBM's JVM very often and one needs to look no further than Mozilla, OpenOffice.org and Qt for evidence that dual-licensing doesn't necessarily lead to uncontrolled forks.
The truly bizarre thing to me is that this hasn't already happened. It's not like Sun is trying to keep Java sources secret. They've already exposed them to the world with their fairly liberal research license.
Mayber things will change. I'm reminded of Eric Sink's comment on Slashdot years ago regarding open sourcing OOo:
"The only glimmer of hope has been Sun, which seems to have a practice of being smart during the even-numbered years and downright silly during the odd-numbered ones."
Non issue? (Score:3, Interesting)
So what's Sun's angle here? (Score:3, Interesting)
The problem (as I see it), is that it's too late for any kind of java desktop resurgence. How come Sun never produced any kind of Java Gnome/Gtk+ apps? They do employee Gnome contributors and Gnome is their desktop. Oh right....Swing is enough for everyone,*rollseyes*. Maybe four years ago if they had gotten behind Java gtk+, and made this move things would be different, but much of the open source desktop developers have moved on to Ruby, Python, and Mono. And there's still a lot of development done in C/C++. Even on the server side, many people are moving to LAMP+Ruby.
So my question is what is Sun's reasoning for doing it now?
Re:whocares (Score:2)
Re:whocares (Score:2)
Me thinks you care even more now.