2017-08-30 1 views
2

J'ai essayé d'intégrer cn1lib pour le transfert de données natif, qui est disponible sur la page Extensions. Malheureusement, lorsque cette bibliothèque est intégrée, certaines erreurs de construction apparaissent: Certaines classes awt sont manquantes (par exemple, import java.awt.Component;).Codenameone: Erreur de construction lors de l'intégration de Codename One Bibliothèque de transfert de données native

Je ne sais pas, ce qui manque exactement pour obtenir la construction.

Voici la console-sortie avec l'erreur de construction:

[echo] Compile is forcing compliance to the supported API's/features for maximum device compatibility. This allows smaller 
    [echo]   code size and wider device support 
    [copy] Copying 80 files to /Users/Klaus/Documents/workspace/GTD/build/tmp 
    [javac] /Users/Klaus/Documents/workspace/GTD/build.xml:147: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds 
    [javac] Compiling 73 source files to /Users/Klaus/Documents/workspace/GTD/build/tmp 
    [javac] Note: Some input files use or override a deprecated API. 
    [javac] Note: Recompile with -Xlint:deprecation for details. 
    [javac] Note: /Users/Klaus/Documents/workspace/GTD/src/de/zeitkuenstler/gtd/data/DBXAccess.java uses unchecked or unsafe operations. 
    [javac] Note: Recompile with -Xlint:unchecked for details. 
    [copy] Copying 4 files to /Users/Klaus/Documents/workspace/GTD/build/tmp 
    [jar] Building jar: /Users/Klaus/Documents/workspace/GTD/dist/GTD.jar 
    [javac] /Users/Klaus/Documents/workspace/GTD/build.xml:171: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds 
    [javac] Compiling 1 source file to /Users/Klaus/Documents/workspace/GTD/native/internal_tmp 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:5: error: package java.awt does not exist 
    [javac] import java.awt.Component; 
    [javac]    ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:6: error: package java.awt does not exist 
    [javac] import java.awt.Container; 
    [javac]    ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:7: error: package java.awt does not exist 
    [javac] import java.awt.EventQueue; 
    [javac]    ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:8: error: package java.awt does not exist 
    [javac] import java.awt.Frame; 
    [javac]    ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:9: error: package java.awt.datatransfer does not exist 
    [javac] import java.awt.datatransfer.DataFlavor; 
    [javac]       ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:10: error: package java.awt.datatransfer does not exist 
    [javac] import java.awt.datatransfer.Transferable; 
    [javac]       ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:11: error: package java.awt.datatransfer does not exist 
    [javac] import java.awt.datatransfer.UnsupportedFlavorException; 
    [javac]       ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:12: error: package java.awt.dnd does not exist 
    [javac] import java.awt.dnd.DnDConstants; 
    [javac]     ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:13: error: package java.awt.dnd does not exist 
    [javac] import java.awt.dnd.DropTargetAdapter; 
    [javac]     ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:14: error: package java.awt.dnd does not exist 
    [javac] import java.awt.dnd.DropTargetDropEvent; 
    [javac]     ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:15: error: cannot find symbol 
    [javac] import java.io.BufferedInputStream; 
    [javac]    ^
    [javac] symbol: class BufferedInputStream 
    [javac] location: package java.io 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:16: error: cannot find symbol 
    [javac] import java.io.File; 
    [javac]    ^
    [javac] symbol: class File 
    [javac] location: package java.io 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:17: error: cannot find symbol 
    [javac] import java.io.FileInputStream; 
    [javac]    ^
    [javac] symbol: class FileInputStream 
    [javac] location: package java.io 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:21: error: cannot find symbol 
    [javac] import java.net.URLConnection; 
    [javac]    ^
    [javac] symbol: class URLConnection 
    [javac] location: package java.net 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:22: error: package java.nio.file does not exist 
    [javac] import java.nio.file.Files; 
    [javac]     ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:26: error: package javax.swing does not exist 
    [javac] import javax.swing.JComponent; 
    [javac]     ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:27: error: package javax.swing does not exist 
    [javac] import javax.swing.JFrame; 
    [javac]     ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:28: error: package javax.swing does not exist 
    [javac] import javax.swing.JPanel; 
    [javac]     ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:32: error: package java.awt.dnd does not exist 
    [javac]  java.awt.dnd.DropTarget dropTarget; 
    [javac]    ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:34: error: cannot find symbol 
    [javac]  private Component findCanvas(Component c, Set<Component> checked) { 
    [javac]        ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:34: error: cannot find symbol 
    [javac]  private Component findCanvas(Component c, Set<Component> checked) { 
    [javac]             ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:34: error: cannot find symbol 
    [javac]  private Component findCanvas(Component c, Set<Component> checked) { 
    [javac]   ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:60: error: cannot find symbol 
    [javac]  private Component findCanvas(Component c) { 
    [javac]        ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:60: error: cannot find symbol 
    [javac]  private Component findCanvas(Component c) { 
    [javac]   ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:42: error: cannot find symbol 
    [javac]   if (c instanceof JComponent) { 
    [javac]      ^
    [javac] symbol: class JComponent 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:45: error: cannot find symbol 
    [javac]     JComponent jc = (JComponent)c; 
    [javac]    ^
    [javac] symbol: class JComponent 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:45: error: cannot find symbol 
    [javac]     JComponent jc = (JComponent)c; 
    [javac]        ^
    [javac] symbol: class JComponent 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:46: error: cannot find symbol 
    [javac]     Component[] children = jc.getComponents(); 
    [javac]    ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:47: error: cannot find symbol 
    [javac]     for (Component child : children){ 
    [javac]     ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:48: error: cannot find symbol 
    [javac]      Component found = findCanvas(child, checked); 
    [javac]     ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:61: error: cannot find symbol 
    [javac]   return findCanvas(c, new HashSet<Component>()); 
    [javac]          ^
    [javac] symbol: class Component 
    [javac] location: class NativeDragAndDropImpl 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:70: error: cannot find symbol 
    [javac]    Frame[] frames = Frame.getFrames(); 
    [javac]    ^
    [javac] symbol: class Frame 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:70: error: cannot find symbol 
    [javac]    Frame[] frames = Frame.getFrames(); 
    [javac]        ^
    [javac] symbol: variable Frame 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:71: error: cannot find symbol 
    [javac]     JPanel canvas = null; 
    [javac]    ^
    [javac] symbol: class JPanel 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:72: error: cannot find symbol 
    [javac]     for (Frame frame : frames) { 
    [javac]     ^
    [javac] symbol: class Frame 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:73: error: cannot find symbol 
    [javac]      if (frame instanceof JFrame) { 
    [javac]          ^
    [javac] symbol: class JFrame 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:74: error: cannot find symbol 
    [javac]       JFrame jframe = (JFrame)frame; 
    [javac]      ^
    [javac] symbol: class JFrame 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:74: error: cannot find symbol 
    [javac]       JFrame jframe = (JFrame)frame; 
    [javac]          ^
    [javac] symbol: class JFrame 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:75: error: cannot find symbol 
    [javac]       canvas = (JPanel)findCanvas(jframe.getContentPane()); 
    [javac]         ^
    [javac] symbol: class JPanel 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:81: error: cannot find symbol 
    [javac]     final JPanel fcanvas = canvas; 
    [javac]      ^
    [javac] symbol: class JPanel 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:82: error: package java.awt.dnd does not exist 
    [javac]     dropTarget = new java.awt.dnd.DropTarget(canvas, new DropTargetAdapter() { 
    [javac]           ^
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:82: error: cannot find symbol 
    [javac]     dropTarget = new java.awt.dnd.DropTarget(canvas, new DropTargetAdapter() { 
    [javac]                 ^
    [javac] symbol: class DropTargetAdapter 
    [javac] /Users/Klaus/Documents/workspace/GTD/lib/impl/native/javase/com/codename1/datatransfer/NativeDragAndDropImpl.java:65: error: cannot find symbol 
    [javac]   EventQueue.invokeLater(new Runnable() { 
    [javac]  ^
    [javac] symbol: variable EventQueue 
    [javac] location: class NativeDragAndDropImpl 
    [javac] 43 errors 

BUILD FAILED /Users/Klaus/Documents/workspace/GTD/build.xml:171: Compile échoué; voir la sortie d'erreur du compilateur pour plus de détails.

+0

Comment avez-vous installé la bibliothèque? Grâce Codename Un paramètres, ou d'une autre manière? –

+0

Grâce à la section settings - y compris l'appel de "refresh Libs" – KlausHeywinkel

+0

Pouvez-vous lister les erreurs exactes que vous avez? Les obtenez-vous en cliquant sur le projet et en faisant une construction? –

Répondre

1

Il semble y avoir un bogue dans le modèle Eclipse build.xml dans la version actuelle. J'ai appliqué un correctif qui sera inclus avec la prochaine mise à jour du plugin. En attendant, vous devrez apporter une petite modification à votre fichier build.xml.

Vers la ligne 170 de votre build.xml, il y a un appel javac:

<javac destdir="native/internal_tmp" compiler="modern" 
      source="1.8" 
      target="1.8" 
      bootclasspath="lib/CLDC11.jar" 
      classpath="lib/CodenameOne.jar:${build.classes.dir}:lib/impl/cls:build/tmp"> 
      <src path="native/javase"/> 
      <src path="lib/impl/native/javase"/> 
     </javac> 

Retirez la ligne bootclasspath=, si vous vous retrouvez avec:

<javac destdir="native/internal_tmp" compiler="modern" 
      source="1.8" 
      target="1.8" 
      classpath="lib/CodenameOne.jar:${build.classes.dir}:lib/impl/cls:build/tmp"> 
      <src path="native/javase"/> 
      <src path="lib/impl/native/javase"/> 
     </javac> 
+0

Merci - cela a fonctionné :-) – KlausHeywinkel