(Category) (Category) FAQ-O-Matic :
JBuilder 6 Known Bugs
Bugs known to exist in JBuilder 6.
2001-Dec-20 9:04am gyles19@visi.com
Subcategories:

Answers in this category:
(Answer) Code Insight doesn't work inside JSP files.
(Answer) Compiling code containing JDK 1.4's new "assert" keyword while an earlier JDK (1.3.1 or earlier) is selected causes an Error #: 2301: internal compiler error: java.lang.NullPointerException.
(Answer) In Project Properties | Run | Test tab, only two JUnit Test Runners are available, the JUnit Text UI, and the JUnit Swing UI. The JBTestRunner selection is not present. Sometimes, though, it appears, but often it doesn't.
(Answer) I have a project that contains an EAR, and every time I build it, my modem dials up my ISP. What's going on?
(Answer) Error #: 2301 : internal compiler error: java.lang.ArrayIndexOutOfBoundsException
(Answer) JBuilder 6 Compile Errors - a Workaround
(Answer) Infinite compiles
(Answer) Methods on Object lost through Interfaces

[Add a New Answer in "JBuilder 6 Known Bugs"]
2002-Jun-07 1:14pm
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
Code Insight doesn't work inside JSP files.
CodeInsight will appear if auto-popup is enabled (IE it will appear when you type a period) but the keystrokes to invoke MemberInsight and ParameterInsight are non-funtional in JSP files.
2001-Dec-20 9:10am gyles19@visi.com
[Append to This Answer]
2001-Dec-20 9:10am
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
Compiling code containing JDK 1.4's new "assert" keyword while an earlier JDK (1.3.1 or earlier) is selected causes an Error #: 2301: internal compiler error: java.lang.NullPointerException.
If you enable asserts, the compiler should create a class with the 'version 48' thing, which will require a 1.4 JDK to load and run. Trying to compile code containing the 'assert' keyword with a pre-1.4 compiler is not going to work. JBuilder should detect this situation and give a better error message, for sure.

I don't have a 1.4 beta on my home machine to test this with fully, but I can still reproduce the NPE:

Create a one-class project and assign it a 1.3.1 JDK.

Selecting different target JDKs (IE 'all', 'JDK 1.2', 'JDK 1.3', or 'JDK 1.4') doesn't matter, the error still appears.

Leave asserts disabled (Project Properties | General), project compiles but you get a 'no such method' error on the assert line.

Enable asserts. Now you get a 2301 error and the following appears in the -verbose output:

  java.lang.NullPointerException
        at com.borland.compiler.frontend.Unop.b(Unknown Source)
        at com.borland.compiler.frontend.Assignop.b(Unknown Source)
        at com.borland.compiler.frontend.AST.c(Unknown Source)
        at com.borland.compiler.frontend.Exec.b(Unknown Source)
        at com.borland.compiler.frontend.AST.c(Unknown Source)
        at com.borland.compiler.frontend.FunDef.a(Unknown Source)
        at com.borland.compiler.frontend.FunDef.b(Unknown Source)
        at com.borland.compiler.frontend.AST.c(Unknown Source)
        at com.borland.compiler.frontend.ClassDef.a(Unknown Source)
        at com.borland.compiler.frontend.TopLevel.a(Unknown Source)
        at com.borland.compiler.frontend.JavaCompiler.a(Unknown Source)
        at com.borland.compiler.frontend.JavaCompiler.compile(Unknown Source)
        at com.borland.compiler.frontend.JavaCompiler.compile(Unknown Source)
        at com.borland.javamaker.ProjectEntry.a(Unknown Source)
        at com.borland.javamaker.a.compile(Unknown Source)
        at com.borland.javamaker.x.make(Unknown Source)
        at com.borland.javamaker.x.a(Unknown Source)
        at com.borland.javamaker.ProjectEntry.compile(Unknown Source)
        at com.borland.javamaker.ProjectEntry.make(Unknown Source)
        at com.borland.javamaker.NewJavaMaker.makeThem(Unknown Source)
        at com.borland.jbuilder.build.JavaBuildTask.build(Unknown Source)
        at com.borland.primetime.build.BuildProcess.run(Unknown Source)
        at java.lang.Thread.run(Thread.java:484)

Workarounds:
If you must compile with a 1.3.1 or earlier JDK, you should disable the assert keyword (Project Properties | General) and then:

  1) comment out or delete all asserts already in the code;
  2) provide an assert method somewhere where each class can find it:
 
public void assert( boolean exp ) {}

This will allow the project to compile and run until you have a 1.4-compatible JDK available.

2002-Jan-05 8:37am gyles19@visi.com

Another gotcha: If you attempt to use the Designer on a class which contains a fake assert() method shown above, the designer will kack. So, the fake-assert workaround won't be useful for visual components you wish to manipulate with the Designer.

   java.lang.NullPointerException
        at com.borland.jbuilder.jot.src.eb.c(Unknown Source)
        at com.borland.jbuilder.jot.src.cc.h(Unknown Source)
        at com.borland.jbuilder.jot.src.eb.getDeclaredName(Unknown Source)
        at com.borland.jbuilder.jot.src.eb.getName(Unknown Source)
        at com.borland.jbuilder.jot.src.cd.execute(Unknown Source)
        at com.borland.jbuilder.jot.src.jd.seek(Unknown Source)
        at com.borland.jbuilder.jot.src.jd.hasNext(Unknown Source)
        at com.borland.jbuilder.jot.src.qc.a(Unknown Source)
        at com.borland.jbuilder.jot.src.nc.getDeclaredMethod(Unknown Source)
        at com.borland.jbuilder.jot.src.nc.getMethod(Unknown Source)
        at com.borland.jbuilder.cmt.jb.JbComponent.getMethod(Unknown Source)
        at com.borland.jbuilder.cmt.jb.JbComponent.h(Unknown Source)
        at com.borland.jbuilder.cmt.jb.JbComponent.q(Unknown Source)
        at com.borland.jbuilder.cmt.jb.JbComponent.init(Unknown Source)
        at com.borland.jbuilder.cmt.CmtComponentManager.getComponent(Unknown Source)
        at com.borland.jbuilder.cmt.CmtComponentManager.getComponent(Unknown Source)
        at com.borland.jbuilder.cmt.CmtComponentManager.getComponent(Unknown Source)
        at com.borland.jbuilder.designer.DesignerViewer.getComponentSource(Unknown Source)
        at com.borland.jbuilder.designer.inspector.InspectorView.a(Unknown Source)
        at com.borland.jbuilder.designer.inspector.InspectorView.setTarget(Unknown Source)
        at com.borland.jbuilder.designer.inspector.InspectorView.init(Unknown Source)
        at com.borland.jbuilder.designer.inspector.Inspector.a(Unknown Source)
        at com.borland.jbuilder.designer.inspector.Inspector.init(Unknown Source)
        at com.borland.jbuilder.designer.i.run(Unknown Source)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:154)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:337)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)                                   

2002-Jan-05 8:53am gyles19@visi.com
[Append to This Answer]
2002-Jan-05 8:53am
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
In Project Properties | Run | Test tab, only two JUnit Test Runners are available, the JUnit Text UI, and the JUnit Swing UI. The JBTestRunner selection is not present. Sometimes, though, it appears, but often it doesn't.
The all-Java JBuilder is basically a big collection of OpenTools, and each OpenTool is assigned to a group. Several groups are lazy-loaded, meaning they aren't initialized when JBuilder is launched, but wait until you ask to see them. The Wizards menu is an example of a lazy-loaded group.

The JBuilder Test Runner OpenTool is assigned to the Wizards group (probably not the best choice.) So, if you haven't triggered anything that would cause the Wizards group to be initialized, the JBuilderTestRunner won't appear in the selection list under Project Properties | Run | Test.

A simple work around for this is to click on the Wizards menu item and wait a moment for the wizards menu to appear. Now the wizards are initialized, and JBuilder Test Runner should appear in the Project Properties | Run | Test tab.
2002-Jan-05 9:17am gyles19@visi.com

[Append to This Answer]
2002-Jan-05 9:17am
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
I have a project that contains an EAR, and every time I build it, my modem dials up my ISP. What's going on?
JBuilder is trying to validate the EAR descriptor file, which is an XML document containing a DOCTYPE pointing at a URL on Sun's website. JBuilder's XML support is trying to retrieve that DTD so that it can validate the descriptor document.

This remote access to Sun's website is what is causing your machine to dial out. To prevent this from happening, change the DOCTYPE to point to a local copy of the DTD.

  

2002-Jan-05 10:50am gyles19@visi.com
[Append to This Answer]
2002-Jan-05 10:56am
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
Error #: 2301 : internal compiler error: java.lang.ArrayIndexOutOfBoundsException
[Append to This Answer]
2002-Feb-18 10:56pm
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
JBuilder 6 Compile Errors - a Workaround
Have you had projects that compiled without a problem in JBuilder 5, only to
have them fail to work in JBuilder 6?  Have you had problems with classing 
being built, only to have the JVM say that the classloader can't find the 
class?  Here's a workaround I developed that seems to have solved these  
problems for me.

First in your \jbuilder6\bin\jbuilder.config file add the following line:

vmparam -Duse.old.bmj

Next, start JBuilder 6.  Open your project.  From the main menu select Project
| Project Properties.  Choose the 'Build' tab.  Be sure two options are 
CHECKED:

- Check stable packages.
- Make stable packages.

Doing this seems to have fixed all build errors for me.
2002-Mar-18 3:00pm dave@davenet.net
[Append to This Answer]
2002-Mar-18 3:00pm
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
Infinite compiles
See if any of these workarounds helps you:

1) Project Properties | Build | Target VM -> All SDKs (For some people, setting this back wasn't enough, they had to manually edit the jpx file and delete the property completely.)

2) Project Properties | Build | Check Stable Packages and Make Stable Packages -> Enable

3) Edit jbuilder.config and add the following and restart JBuilder:

       vmparam -Duse.old.bmj

You may need to delete the classes/package cache stuff after making any of the above changes. You may also need to apply a combination of the above.

2002-Apr-03 9:00am gyles19@visi.com

[Append to This Answer]
2002-Apr-03 9:00am
(Answer) (Category) FAQ-O-Matic : (Category) JBuilder 6 Known Bugs :
Methods on Object lost through Interfaces
If you select for you target VM anything other that "All Java SDKs" and compile a simple program such as the following

 public class B implements XYZ{
  B(){
   test2(this);
  }
  public static void main(String [] vars){
   new B();
  }
  void test2(XYZ interf){
   Class c = interf.getClass(); //does not work
 //  Class c = ((Object)interf).getClass(); //does work
   System.out.println("class is " + c);
  }
 }
 interface XYZ{};
with -classic you will get NoSuchMethodError exceptions, and with other JVMs you will get NullPointerExceptions trying to call methods defined in Object through the interface reference.

This does not happen from the command prompt. JBuilder is not kind enough to let us see its compile as it does its execution command either...
2002-Jun-07 3:37pm lamont_gilbert@rigidsoftware.com, gyles19@visi.com

I believe this is another symptom of the bugs in the JB6 compiler caused by the new 'Target JVM' feature. Basically, avoid using this field, leave it set to the default value of 'All JVMs'.

The more common symptom of this problem is the infinite compile loop.
2002-Jun-08 8:42pm gyles19@visi.com

[Append to This Answer]
2002-Jun-08 8:42pm
Previous: (Category) JBuilder 6 General
Next: (Category) JBuilder 5 Known Bugs
This document is: http://www.visi.com/~gyles19/cgi-bin/fom.cgi?file=305
[Search] [Appearance] [Show Top Category Only]
This is a Faq-O-Matic 2.709.
This FAQ administered by gyles19@visi.com.

Other JBuilder Links

Java Community
Java Tools
Code Central
JB OpenTools
Community
Recent
Threads
Borland Chat
Chat FAQ
Feature Matrices
3.0 |  3.5 |  4.0
5.0 |  6.0 |  7.0
Shop for
JBuilder
JBuilder
Downloads
and reg keys
Report Piracy
Online Manuals
4.0 |  5.0 |  6.0
7.0
Borland
DevSupport's
Bug/RFE Form

Quality Central Client
JB Patches &
Updates
JBuilder FAQs TIs
JBuilder
Newsgroups
Tamaracka's
News Archive
Mr. Haki's
JBuilder Machine
JGuru's
JBuilder FAQ
Sun's Bug
Parade
Netring Home - About - Privacy
The
JBuilder Netring Logo
The Borland JBuilder Netring by JBuilder FAQ-O-Matic
[ Join Now | List Sites | Random | << Prev | Next >> ]
[ Previous 5 Sites | Skip Previous | Skip Next | Next 5 Sites ]