Skip to content

3.7.x broken builds and releases #48

@sfuerte

Description

@sfuerte

it looks like there is a problem with 3.7.x release builds in general.

If I use 3.7.6.jar downloaded from here, then I'd get the following NCF error in an app:

java.lang.NoClassDefFoundError: com/sun/java/swing/plaf/windows/WindowsLookAndFeel
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:848)
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:633)
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:598)
	at com.jidesoft.swing.JideSplitButton.updateUI(JideSplitButton.java:109)
	at java.desktop/javax.swing.JMenuItem.init(JMenuItem.java:208)
	at java.desktop/javax.swing.JMenuItem.<init>(JMenuItem.java:147)
	at java.desktop/javax.swing.JMenuItem.<init>(JMenuItem.java:124)
	at java.desktop/javax.swing.JMenu.<init>(JMenu.java:161)
	at java.desktop/javax.swing.JMenu.<init>(JMenu.java:151)
	at com.jidesoft.swing.JideMenu.<init>(JideMenu.java:59)
	at com.jidesoft.swing.JideSplitButton.<init>(JideSplitButton.java:44)

It's getting more interesting when one starts to compare releases and their sizes, for example:

jide-oss-3.6.14.jar - 1.57Mb
jide-oss-3.7.6.jar - 178k

and for 3.7.6 it's pretty much doesn't matter where I take it from: Github (https://github.com/jidesoft/jide-oss/releases/tag/3.7.6), Jitpack.io (https://jitpack.io/#jidesoft/jide-oss) or build locally (with Maven).

On Jitpack, click "look up", it'll show you different versions, snapshots and their build logs. Most/all of them are failing.

On my local machine, when I was trying to compile it with Maven (mvn -f pom_compile.xml clean compile package), it wouldn't copy actual classes at all but rather some minor artefacts. If I try it with modified Ant build then it'll produce bunch of Windows related errors:

jide-oss/src/com/jidesoft/plaf/vsnet/VsnetWindowsProgressBarUI.java:25: error: cannot find symbol
    [javac] public class VsnetWindowsProgressBarUI extends WindowsProgressBarUI implements ActionListener
....
    [javac] 100 errors
    [javac] 30 warnings

changes to Ant build:

diff --git a/build.properties b/build.properties
index f6c53b2c..a425aaf3 100644
--- a/build.properties
+++ b/build.properties
@@ -23,5 +23,5 @@ deprecation=off
 stacksize=64m
 initheapsize=128m
 maxheapsize=512m
-source=1.5
-target=1.5
+source=9^M
+target=9^M
diff --git a/build.xml b/build.xml
index 2ca9544e..cd326ea7 100644
--- a/build.xml
+++ b/build.xml
@@ -53,6 +53,7 @@
                fork="yes" memoryInitialSize="${initheapsize}" memoryMaximumSize="${maxheapsize}" verbose="no"
                debug="${debug}" deprecation="${deprecation}">
             <classpath refid="standard_classpath"/>
+            <compilerarg line="--add-exports java.desktop/com.sun.java.swing.plaf.windows=ALL-UNNAMED --add-exports java.desktop/javax.swing.plaf.synth=ALL-UNNAMED --add-exports java.desktop/sun.swing=ALL-UNNAMED --add-exports java.desktop/sun.awt=ALL-UNNAMED --add-exports java.desktop/sun.awt.image=ALL-UNNAMED --add-exports java.desktop/sun.awt.shell=ALL-UNNAMED --add-exports java.desktop/sun.awt.dnd=ALL-UNNAMED --add-exports java.desktop/sun.awt.windows=ALL-UNNAMED --add-exports java.base/sun.security.action=ALL-UNNAMED" />^M
         </javac>
         <copy todir="${output_dir}">
             <fileset dir="${src_dir}" includes="**/*.gif,**/*.jpg,**/*.png,**/*.properties,**/*.ttf,**/*.vm"/>

Potentially builds on Windows OS are fine but Unix/Linux-based shall be reviewed.

My JDK & OS versions:

> java -version
openjdk version "11.0.9.1" 2020-11-04 LTS
OpenJDK Runtime Environment Zulu11.43+1007-CA (build 11.0.9.1+1-LTS)
OpenJDK 64-Bit Server VM Zulu11.43+1007-CA (build 11.0.9.1+1-LTS, mixed mode)

> sw_vers
ProductName:	macOS
ProductVersion:	11.0.1

PS: potentially relates to #30

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions