Problema do Swing no Java 10
Atualmente, estou tentando mover nosso aplicativo do Java 8 para o Java 10 e em alguns meses passarei para o Java 11.
Temos um sistema legado que usa um pouco de APIs que são removidas ou serão removidas, eu acho. Estamos usando o script ant (1.10.1) para a compilação de aplicativos.
Abaixo está o mesmo da parte que cria nosso aplicativo:
<target name="javac-setup" depends="flags, with.clover, jaxb-apply, flamingo.javac"/>
, <target name="javac" depends="javac-setup">
<mkdir dir="${workmanager.dir.classes}"/>
<javac destdir="${workmanager.dir.classes}" deprecation="on" debug="${javac.debug}" encoding="iso-8859-1" includeantruntime="false">
<compilerarg line="-Xlint:static"/>
<compilerarg line="-Xlint:unchecked"/>
<compilerarg line="-Xlint:overrides"/>
<compilerarg line="-Xmaxerrs 9999" />
<compilerarg line="-Xmaxwarns 9999" />
<compilerarg value="-Werror"/>
<src path="${workmanager.dir.src}"/>
<src path="${webservices.dir.java.src}"/>
<patternset refid="java.sources"/>
<classpath refid="classes.classpath"/>
</javac>
</target>
Durante a compilação, estou recebendo alguns erros relacionados ao Java Swing (novamente um pouco mais antigo, mas preciso viver com ele) depois de passar para o Java 10. Como ainda não estou completamente ciente de todas as mudanças ocorridas no Java 10, para mim parece como a questão está relacionada ao conceito de modularização. Não tenho certeza, embora ainda esteja aprendendo. Conheço sua sugestão para saber se esses tipos de erro estão relacionados à modularização. Também alguma sugestão ou dicas para corrigir isso?
Abaixo está o erro:
[javac] Compiling 3253 source files to C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\classes
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\datamgmt\report\ui\AssignPosNumberToolbar.java:26: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsButtonUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\datamgmt\report\ui\AssignPosNumberToolbar.java:27: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsToolBarUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\utils\WMClosableTabbedPane.java:33: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsTabbedPaneUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\MultiColumnComboBox.java:58: error: package com.sun.java.swing.plaf.motif is not visible
[javac] import com.sun.java.swing.plaf.motif.MotifComboBoxUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.motif is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\datamgmt\ui\SimplificationComboBox.java:31: error: package com.sun.java.swing.plaf.motif is not visible
[javac] import com.sun.java.swing.plaf.motif.MotifComboBoxUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.motif is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPComboBoxUI.java:21: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsComboBoxUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\datamgmt\ui\favorites\FavoritesToolBar.java:28: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsButtonUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\datamgmt\ui\favorites\FavoritesToolBar.java:29: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsToolBarUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\ptc\PtcLaf.java:14: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsLookAndFeel;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\ptc\PtcMenuUI.java:31: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsLookAndFeel;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\ptc\PtcRadioButtonMenuItemUI.java:14: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsIconFactory;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\ptc\PtcSeparatorUI.java:20: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsSeparatorUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPButtonUI.java:26: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsButtonUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPLookAndFeel.java:24: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsIconFactory;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPLookAndFeel.java:25: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsLookAndFeel;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPMenuUI.java:25: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsLookAndFeel;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPRadioButtonMenuItemUI.java:14: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsIconFactory;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPSeparatorUI.java:17: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsSeparatorUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPToggleButtonUI.java:23: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsToggleButtonUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] C:\WorkSpace\JAVA10\oswm\rel20.10_Patches\WorkManager\src\com\osm\ui\laf\xplookandfeel\XPToolBarUI.java:17: error: package com.sun.java.swing.plaf.windows is not visible
[javac] import com.sun.java.swing.plaf.windows.WindowsToolBarUI;
[javac] ^
[javac] (package com.sun.java.swing.plaf.windows is declared in module java.desktop, which does not export it)
[javac] 20 errors