is there some j2se bluetooth lib (MIT or BSD license)?

All I found so far were GPL-ed (read: useless) or commercial.

That one is LGPL (which means you can use it in commercial products), but chances are it only works on Windows (if that’s ok)

LGPL=no one knows what it’s supposed to mean when it comes to Java

Thats the reason why most projects switched from LGPL to BSD or MIT.

Well, guess I have to use some GPL lib… toy around with it locally and then never release anything which uses it.

http://www.gnu.org/licenses/lgpl-java.html

“The typical arrangement for Java is that

Applications use Java’s “import” functionality to access classes from these libraries. When the application is compiled, function signatures are checked against the library, creating a link. The application is then generally a derivative work of the library.”

Note those magic words I’ve bolded.

They don’t cover all bases with those statements. IMHO GNU has dodged the question time and time again (and, AFAIAA, still dodge it). A few years ago I had the cynical idea that this is because they’d realised they’d screwed up the original wording of the LGPL, and if they admitted it, they would thereby render toothless all existing LGPL licensed stuff (because once it’s licensed incorrectly, anyone can use that version of the code according to the incorrect license. They can’t revoke it). Or, at least, that someone was afraid that would happen (no-one’s 100% sure unless it goes to court). YMMV. Conspiracy theories abound! :stuck_out_tongue:

There are other ways of getting java to link, and it’s designed to link at runtime, by default. IANAL, but the explanations of linking and it’s relation to LGPL which were invented for C-style compilation and linking have always seemed to have holes when applied to java’s runtime-resolved linking and dynamic recompilation.

Please don’t turn this into another LGPL thread.

The LGPL is too much text and it manages to remain totally fuzzy at the same time. From the link above: “Applications need only follow the requirements in section 6 of the LGPL: allow new versions of the library to be linked with the application; and allow reverse engineering to debug this.”

-allowing reverse engineering… awesome
-webstart and molebox/GCJ/Jet is a no-no, because the lib cannot be replaced easily with a newer version… also great

Seriously. LGPL is a pile of shit if you’re using Java. If you disagree, feel free to start your own thread.

Edit: Oh and some WinXP only lib is totally useless for me. None of the machines here run it.

I had a poke around for free (both beer and speach) java bluetooth libs a couple of months ago (I wanted to try to connect to a Wii remote). Unfortunately the only free implementation is buggy and doesn’t work. The verdict from the Java wii remote people was that avetanaBluetooth is the only way at the moment (which is a commercial lib).

Basically, you’re screwed. >:(

This thread is full of information with people trying various ways of getting bluetooth to work with java. I seem to remember giving up on the whole thing because any solution required lots of tedious setup work on the users machine (dropping extension libraries into the JRE, fiddling with control panel settings, etc.). Most of them don’t even support bluetooth usb dongles (only serial port dongles) so they’re basically useless anyway. :frowning:

Hm. Seems like the situation is a lot worse then expected. I really thought that it shouldn’t be much of a problem after all these years. :confused: