Go Back   The macosxhints Forums > Working with OS X > OS X Developer



Reply
 
Thread Tools Rate Thread Display Modes
Old 02-03-2004, 01:02 AM   #1
MacBard
Prospect
 
Join Date: Jan 2002
Posts: 5
Java 1.4.2 and Jbuilder on Mac OS X

Apple has just released Java 1.4.2 for Panther.

http://www.apple.com/macosx/features/java/

Can anyone provide me a step by step way of setting up JBuilder 7 to use it? I've read similar threads on Mac OS X Hints when earlier versions of Java were released, but they didn't seem to work for me.

Suggestions?

Thanks,
MacBard
MacBard is offline   Reply With Quote
Old 02-03-2004, 01:17 PM   #2
freimacosxheit
Triple-A Player
 
Join Date: Jan 2002
Posts: 176
My JBuilder 7 does not work after upgrading Java version to 1.4.2 via Software Update lately.


Please help.
freimacosxheit is offline   Reply With Quote
Old 02-03-2004, 08:51 PM   #3
Krazy
Prospect
 
Join Date: Feb 2004
Posts: 25
You could try the instructions at http://www.minniger.com/CA-SF/dave/jbuilder-mac.html. If you take a look at the borland newsgroup mentioned there is even a discussion of JbuilderX on 1.4.2. Hope this helps.... me, I'm going to wait a bit before taking the plunge ;-)
Krazy is offline   Reply With Quote
Old 02-03-2004, 11:21 PM   #4
hayne
Site Admin
 
Join Date: Jan 2002
Location: Montreal
Posts: 32,473
I followed the instructions from this other thread on these forums when I originally installed JBuilder 9 on my Panther machine running Java 1.4.1:
http://forums.macosxhints.com/showth...threadid=14719

But now that I have updated to 1.4.2, I haven't managed to get JBuilder 9 to work even though I have changed the JDK path to point to 1.4.2 using Tools/Config JDK. I also changed the script that I use to launch JBuilder to use 1.4.2 and JBuilder does launch and run fine. What I mean by not working is that I can't compile any of my .java files since I get an error about the java.lang package not being found.

For the moment, I have moved over to using Eclipse, which installs and runs fine on 1.4.2.
hayne is offline   Reply With Quote
Old 02-03-2004, 11:52 PM   #5
MacBard
Prospect
 
Join Date: Jan 2002
Posts: 5
Quote:
Originally posted by Krazy
You could try the instructions at http://www.minniger.com/CA-SF/dave/jbuilder-mac.html. If you take a look at the borland newsgroup mentioned there is even a discussion of JbuilderX on 1.4.2. Hope this helps.... me, I'm going to wait a bit before taking the plunge ;-)

That link doesn't seem to work. Where is the newgroup?
MacBard is offline   Reply With Quote
Old 02-04-2004, 12:07 AM   #6
hayne
Site Admin
 
Join Date: Jan 2002
Location: Montreal
Posts: 32,473
Quote:
Originally posted by MacBard
That link doesn't seem to work.

The problem is that the link includes an extraneous period (.) at the end of the URL. Just delete the period from the address bar in Safari and hit Return and you'll get there. By the way, I believe the instructions there are the same as those in the forum link I posted above.
hayne is offline   Reply With Quote
Old 02-04-2004, 12:42 AM   #7
MacBard
Prospect
 
Join Date: Jan 2002
Posts: 5
Smile

Ok, this is what I've been able to figure out:

1) The page at the link below has a script on it that you can use to launch JBuilder. Ignore the steps at the top of the page. That's for installing the Linux or Solaris version of JBuilder on Mac OS X.
Page: http://minnigerode.org/CA-SF/dave/jbuilder-mac.html
Script: http://minnigerode.org/CA-SF/dave/run-jbuilder.command

I had to change 2 things for my setup. I had to open the script and find the reference to JBuilder9 and make it say JBuilder7 since that's what I had. Also, my path was different. I had to put the script in: /Applications/jbuilder7/JBuilder.framework/bin

Make sure the script is executable by doing a chmod +x run-jbuilder.command and then launching it from Terminal should bring up JBuilder. The web page says you should be able to double-click the script, but I couldn't get that to work. If anyone has any suggestions regarding that, please feel free to post them.

2) Once you have JBuilder up and running you'll want to use the new JDK for your projects. That can be accomplished as follows.
a) Select Project - Project Properties
b) Click Paths
c) Click the ... beside JDK
d) Click New...
e) Browse to /System/Library/Frameworks/JavaVM.framework/Versions/1.4.2/Home
f) Click the OK buttons 3 times and say, "There's no place like home. There's no place like my Mac."
g) You'll probably want select Project - Project Default Properties and select the JDK there as well.

That should do it. If anyone knows how to make that script double-clickable so the icon could live in the Dock, that would be great.

MacBard
MacBard is offline   Reply With Quote
Old 02-04-2004, 12:45 AM   #8
MacBard
Prospect
 
Join Date: Jan 2002
Posts: 5
Here is the actual contents of run-jbuilder.command in case the web site mentioned above goes away:

#!/bin/sh
#
# Just a quick script to launch jbuilder on a unixy platform.
#
#
# dave@minnigerode.org
#
# (based on a script from Paul Furbacher @ borland.public.jbuilder.macintosh@ne...ps.borland.com)
#

#Set the name of the app - no spaces
APPNAME="JBuilder7"

# The main client class
MAIN="com.borland.jbuilder.JBuilder"

# Where we're called from
INITIALDIR=$PWD

# Where the script is at
RUNIN=`dirname $0`

# go to the script location
cd $RUNIN

# where the libs are
LIBDIR="../lib";

# where the patchs are
PATCHDIR="../patch"


# The boot classpath
BOOTCLASSPATH="$LIBDIR/lawt.jar:$LIBDIR/TabbedPaneFix.jar:$LIBDIR/SequencedEventFix.jar:$LIBDIR/javac.jar:$LIBDIR/JarManifestFix.jar"

if [ `uname` = "Darwin" ]; then
BOOTCLASSPATH="$BOOTCLASSPATH:/System/Library/Java/Extensions/MRJToolkit.jar"
fi

# add the arg flag for bootclasspath
BOOTCLASSPATH="-Xbootclasspath/p:$BOOTCLASSPATH"


# get a list of all the jars - use find since it does the paths nicely
JARS=`find $LIBDIR -name *.jar`

# also get a list of all the ext jars if they exsist. Ok to get dupes of above.
# we just want to make sure these are on the classpath first (see below).
if [ -x $LIBDIR/ext ]; then
EXTJARS=`find $LIBDIR/ext -name *.jar`
fi



# create the classpath with the ext jars first and then the libs.
CP=.
if [ -x $LIBDIR/ext ]; then
for X in $EXTJARS; do
CP=$CP:$X
done
fi
for X in $JARS; do
CP=$CP:$X
done

# any patches?
if [ -x $PATCHDIR ]; then
PATCHJARS=`find $PATCHDIR -name *.jar`
for X in $PATCHJARS; do
CP=$X:$CP
done;
fi


# on OS X we need to set some more defines and -X stuff
# TODO: Need to check this against the current JVM and add/del stuff
case `uname` in
"Darwin")
DEFS=$DEFS" -Dcom.apple.mrj.application.apple.menu.about.name=$APPNAME"
DEFS=$DEFS" -Dapple.laf.useScreenMenuBar=true"
DEFS=$DEFS" -Dapple.awt.brushMetalLook=true"
DEFS=$DEFS" -Dcom.apple.hwaccel=true"
DEFS=$DEFS" -Xdock:name=$APPNAME"
DEFS=$DEFS" -Xverify:none"
DEFS=$DEFS" -Xmaxf0.2"
DEFS=$DEFS" -Xminf0.2"
DEFS=$DEFS" -Xms32m"
DEFS=$DEFS" -Xmx256m"
;;
*)
DEFS=$DEFS" -Xverify:none"
DEFS=$DEFS" -Xmaxf0.2"
DEFS=$DEFS" -Xminf0.2"
DEFS=$DEFS" -Xms32m"
DEFS=$DEFS" -Xmx256m"
echo "Need to add the defs for your platform!"
;;
esac


# echo what were going to do
echo "Will run jbuilder with: java $BOOTCLASSPATH $DEFS -cp $CP $MAIN"

# finally run the app
java $BOOTCLASSPATH $DEFS -cp $CP $MAIN $@


# and cd back to where we came from when the app exits
cd $INITIALDIR
MacBard is offline   Reply With Quote
Old 02-04-2004, 12:47 AM   #9
MacBard
Prospect
 
Join Date: Jan 2002
Posts: 5
Thanks for the input Krazy and hayne. You put me on the right track and now things are working great.
MacBard is offline   Reply With Quote
Old 02-04-2004, 12:49 AM   #10
hayne
Site Admin
 
Join Date: Jan 2002
Location: Montreal
Posts: 32,473
Quote:
Originally posted by MacBard
If anyone knows how to make that script double-clickable so the icon could live in the Dock, that would be great

I named my script with a ".command" suffix to make it double-clickable.
hayne is offline   Reply With Quote
Old 02-04-2004, 12:51 AM   #11
Krazy
Prospect
 
Join Date: Feb 2004
Posts: 25
Bad URL etc

Hi,

1) sorry for the bad URL; the extraneous period is hard to spot!

2) FYI, The newsgroup is borland.public.jbuilder.macintosh on server newsgroups.borland.com

3) Interestingly, from Apple's Java 1.4.2 release notes :
"Radar #3522195

Older versions of JBuilder may not work with Java 1.4.2.

Description: Versions of JBuilder earlier than JBuilder X may not launch with Java 1.4.2 installed.

Workaround: There is no known workaround other than upgrading to JBuilder X. You might also want to contact Borland technical support. "

... this disagrees with MacBard's finding at least for JB7!

4) Currently I'm using the jb9alt.command script from the main site's hints to start up JB9 on 10.3.2 (Java 1.4.1).

5) I guess I'll get to experience all this 'goodness' when I can affort to download the JDK, dev tools update, and JB X Foundation (download limits are a problem... sigh)
Krazy is offline   Reply With Quote
Old 02-04-2004, 01:37 AM   #12
Krazy
Prospect
 
Join Date: Feb 2004
Posts: 25
JBX Enterprise on Java 1.4.1

Interestingly, from the borland community site there are instructions for getting the Solaris version of "JBX Enterprise" running on MacOS X, under 1.4.1.

Check out: http://community.borland.com/article...,31932,00.html

As noted, optimiseIt doesn't work, and I suspect the enterprise demo still expires, leaving you with just "JBX Foundation"

Also it says that a "JBX Developer" version (paid) for OS X can be ordered! This makes a change - the last version you could buy was JB6! Hopefully the "JBX Foundation" version (free) can also be obtained (CD?, download?). I hope this is the case as I prefer having a proper clickable icon (a script is fine, but not as 'mac' friendly)

Of course, this doesn't necessarily help anybody with Java 1.4.2.
Krazy is offline   Reply With Quote
Old 02-04-2004, 03:13 AM   #13
hayne
Site Admin
 
Join Date: Jan 2002
Location: Montreal
Posts: 32,473
JBuilderX Enterprise works with 1.4.2

I have successfully installed and run JBuilderX Enterprise (the trial version) on my iBook 600 running OS X version 10.3.2 with Java 1.4.2

Here's how I did it:
A) Downloaded the Linux version of the JBuilderX Enterprise installer from the Borland download page (after supplying my email address to which Borland send the license file). The download took about an hour on my DSL connection. After Stuffit Expander ran and automatically uncompressed the downloaded file, I was left with a folder named "Linux". I renamed this to "JBuilderXInstallFolder".

B) Following the instructions in http://minnigerode.org/CA-SF/dave/jbuilder-mac.html, I opened a Terminal window, set my JAVA_HOME environment variable by doing (in a bash shell):
JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Home"; export JAVA_HOME

And then I navigated (with 'cd' in Terminal) to the Linux sub-folder under JBuilderXInstallFolder. Here I saw that there was a script named "ent_install.bin" and I ran this script via the command line:
./ent_install.bin LAX_VM $JAVA_HOME/bin/java

This ran the installer. Following the instructions in the Borland community article, I accepted the default choice for the installation folder. It said it would install into the /Applications folder but I found out afterwards that it actually installed into the /Developer/Applications folder. (Note: I have the Apple Developer Tools (XCode Tools) installed. I'm not sure what will happen if you don't have the Developer Tools installed.) The installation took maybe 10 minutes. It seemed to pause a long time right near the end when it said it was installing the Uninstaller so I thought maybe it was hung, but I left it and it finally said it was Done.

B) Saved the license file that I got by email into my home folder (as indicated in the email message).

C) Created a bash script by copying and pasting the script from the Borland community web page referenced above. I had to make a few corrections to the copy/pasted script as noted below in the comments to the script which I give below. (Many of the errors probably arose when the script was transferred to the Borland web page.)

I saved the script into a file with a ".command" suffix so that it is double-clickable. (Note: I haven't yet tried running it by double-clicking - I ran it via the command line as detailed below.)

D) In the same Terminal window as used above (where the JAVA_HOME variable was set) I ran the script and (after a few minutes wait) saw JBuilderX come up with a welcome page and info on what is new. I used File/Open to open my old (JBuilder 9) project file and all was well. I had to right-click (i.e. Control-click) on my project's icon in the structure pane and do "Clean" and then "Rebuild".

Code:
#!/bin/sh 

# This script is a slightly modified version of one recommended by Borland
# on the following web page:
# http://community.borland.com/article...,31932,00.html
# My modifications: (Cameron Hayne, Feb 3, 2004)
# 1) Changed a hard-coded 1.4.1 to the variable $jdk which I set to "CurrentJDK"
# 2) added backslashes to escape the ends of lines in the exec command.
# 3) Corrected the capitalization of JBuilderX in the JBUILDER_HOME definition.
# 4) Added backslashes in front of * and 012 in the "jars" line.
# 5) Removed an extraneous space before "Java/Extensions/MRJToolkit.jar"

JBUILDER_HOME=/Developer/Applications/JBuilderX 
#jdk=CurrentJDK
jdk=1.4.2

cd $JBUILDER_HOME/JBuilder.framework/bin 

jars=`find ../patch ../lib ../lib/servers ../lib/ext ../lib/bes -name \*.jar | tr '\012' : ` 

exec /System/Library/Frameworks/JavaVM.framework/Versions/$jdk/Commands/java \
-Xdock:name="JBuilderX":icon=$JBUILDER_HOME/JBuilder.app/Contents/Resources/JBuilder.icns \
-Xmaxf0.2 \
-Xminf0.2 \
-Dapple.laf.useScreenMenuBar=true \
-Dapple.awt.showGrowbox=true \
-Xverify:none \
-Xbootclasspath/p:../lib/lawt.jar:../lib/TabbedPaneFix.jar:../lib/SequencedEventFix.jar:../lib/javac.jar:../lib/JarManifestFix.jar:/System/Library/Java/Extensions/MRJToolkit.jar \
-Xms32m \
-Xmx256m \
-cp ${jars}../thirdparty/jakarta-tomcat-4.0.6-LE-jdk14/common/lib/servlet.jar \
com.borland.jbuilder.JBuilder
hayne is offline   Reply With Quote
Old 02-07-2004, 11:42 AM   #14
freimacosxheit
Triple-A Player
 
Join Date: Jan 2002
Posts: 176
Just want to share with you my installation experience of JBuilderX.

OS: Mac OS X 10.3.2 with Java 1.4.2 update

Steps:

- It presumes that you have registered with Borland website and installed the Developers' Tools for Panther. Go to http://www.borland.com/products/down..._jbuilder.html to download "jbx_linux.tar" from the list named "Foundation" for a free full English version of JBuilderX installation file.

- An actvation file "Reg426.txt" will send to your email account. Save this file under /Users/username directory.

- Untar the downloaded "jbx_linux.tar" file and you should have a folder "jbx_linux".

- Create a "JBuilderX" directory under /Developer/Applications.

- copy the contents of the folder "jbx_linux" to /Developer/Applications/JBuilderX.

- Using Terminal mode, type "which java" to search for the absolute path for java program. For my system, I got "/usr/bin/java". Go to the directory /Developer/Applications/JBuilderX and type "fnd_install.bin LAX_VM /usr/bin/java" to activate the installation.

- Next, refer to paragraph 4 at http://minnigerode.org/CA-SF/dave/jbuilder-mac.html
to download the activation file "run-jbuilder.command". Before making the file executable using "chmod x+run", use an editor to change the APPNAME from "JBuilder9" to "JBuilderX" in the command file.

- Just activate "run-jbuilder.command", JBuilderX should be activated. Drag the file "run-jbuilder.command" to the Dock for future activation.

Voila!!!! Happy Java Programming on OS X!!!!
freimacosxheit is offline   Reply With Quote
Old 02-07-2004, 10:35 PM   #15
Krazy
Prospect
 
Join Date: Feb 2004
Posts: 25
JBuilderX Foundation for Mac released - proper installer

You can find the Mac OS X version of the JBuilderX Foundation package installer on Borland's site now, with a bit of hunting. You need to click the link from the main downloads page where is says versions exist for solaris, linux, windows. Don't worry that it doesn't mention a mac version. Once you've entered in your email address to receive the registration key, you are taken to a page that has a separate download for the mac version.

Interestingly, it weights in at 34Mb, about half of the size of foundation packages for other platforms! (I'm guessing the other platforms include one or more JVMs which aren't provided on a mac as they are already installed by Apple with the OS)

No problems getting it to run on OS 10.3.2, with Java 1.4.1. JBuilder 8,9,X all require java 1.4.1. (or higher)

Pay attention on the placement of the registration file! I didn't (putting it in the install directory, like I did for JB9) and the application starts, then quits, with a ton of message written to the console, viz:

"Can not get locale

JBuilder X Foundation (Unregistered)
Copyright (c) 1996-2003 Borland Software Corporation. All rights reserved.
License expired"

The last 'license expired' message is repeated 14 times, just so you get the point
Krazy is offline   Reply With Quote
Old 02-08-2004, 10:14 PM   #16
Krazy
Prospect
 
Join Date: Feb 2004
Posts: 25
Just thought I'd like to share my experience of upgrading Java to 1.4.2, after installing JBuilderX Foundation on OS X 10.3.2 under Java 1.4.1 (using the mac version of the installer).

After installing JBX on 1.4.1, I confirmed that I could build java projects. Everything worked as expected. Next I upgraded Java to 1.4.2. Once I fired up JBX after the java upgrade, I changed the reference(s) to the Java SDK to 1.4.2 (from 1.4.1).

I did this for the default project settings (for new projects), and also for the current project. After doing these two things, I was able to correctly rebuild my existing project.

Happy days...
Krazy is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump



All times are GMT -5. The time now is 05:46 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Site design © IDG Consumer & SMB; individuals retain copyright of their postings
but consent to the possible use of their material in other areas of IDG Consumer & SMB.