This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 239669 - Java card classic build fails due to build.xml error
Summary: Java card classic build fails due to build.xml error
Status: RESOLVED FIXED
Alias: None
Product: javacard
Classification: Unclassified
Component: Java Card (show other bugs)
Version: 7.4
Hardware: PC Windows 7 x64
: P2 normal (vote)
Assignee: David Strupl
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-12-20 01:22 UTC by EduardKarelEtc
Modified: 2014-02-19 02:44 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description EduardKarelEtc 2013-12-20 01:22:08 UTC
building a classic applet fails because of the wrong bootclasspath parameter specified in the build.xml file.

In the 'compile-with-preprocessor' target the bootclasspath is set to ${javacard.classic.bootclasspath}. This is set to the classic run-time. 
In the 'compile' target the bootclasspath is set to ${javacard.bootclasspath}. This is set to the connected run-time.

The connected runtime has at least one class in the javacard(x) package that is different between these two runtime jars. (javacardx.crypto.Cipher). This binary incompatibility caused my build to fail. 

Patching the build-impl file corrects this failure.

301c301
<         <javac destdir="${build.classes.dir}" source="${javac.source}" target="${javac.target}" nowarn="${javac.deprecation}" debug="${javac.debug}" optimize="no" bootclasspath="${javacard.classic.bootclasspath}" includeAntRuntime="no">
---
>         <javac destdir="${build.classes.dir}" source="${javac.source}" target="${javac.target}" nowarn="${javac.deprecation}" debug="${javac.debug}" optimize="no" bootclasspath="${javacard.bootclasspath}" includeAntRuntime="no">


As an aside, this change introduces another bug, this time in javac: for a ternary operator it seems to generate intermediate code that uses java.lang.Byte, which is not supported in the classic Java Card runtime. I'll file a bug for that one later.
Comment 1 David Strupl 2014-02-14 10:04:11 UTC
http://hg.netbeans.org/jet-main/rev/6fca8e28483b
Comment 2 Quality Engineering 2014-02-19 02:44:37 UTC
Integrated into 'main-silver', will be available in build *201402190001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)

Changeset: http://hg.netbeans.org/main-silver/rev/6fca8e28483b
User: David Strupl <dstrupl@netbeans.org>
Log: Bug 239669 - Java card classic build fails due to build.xml error