2012-05-08 1 views
4

Deux questions:package javax.persistence n'existe pas malgré l'ajout du module Eclipselink par Netbeans

première partie: quel JAR est requis? Javax.persistence-2.0.0.jar n'a-t-il pas les classes requises, en particulier javax.persistence. *?

enter image description here

trace de la pile comme si:

init: 
deps-jar: 
Created dir: /home/thufir/NetBeansProjects/JavaApplication12/build 
Updating property file: /home/thufir/NetBeansProjects/JavaApplication12/build/built-jar.properties 
Created dir: /home/thufir/NetBeansProjects/JavaApplication12/build/classes 
Created dir: /home/thufir/NetBeansProjects/JavaApplication12/build/classes/META-INF 
Copying 1 file to /home/thufir/NetBeansProjects/JavaApplication12/build/classes/META-INF 
Created dir: /home/thufir/NetBeansProjects/JavaApplication12/build/empty 
Created dir: /home/thufir/NetBeansProjects/JavaApplication12/build/generated-sources/ap-source-output 
Compiling 2 source files to /home/thufir/NetBeansProjects/JavaApplication12/build/classes 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:8: error: package javax.persistence does not exist 
import javax.persistence.*; 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:15: error: cannot find symbol 
@Entity 
    symbol: class Entity 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:16: error: cannot find symbol 
@Table(name = "fud30_groups", catalog = "fudforum", schema = "") 
    symbol: class Table 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:18: error: cannot find symbol 
@NamedQueries({ 
    symbol: class NamedQueries 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:28: error: cannot find symbol 
    @Id 
    symbol: class Id 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:29: error: cannot find symbol 
    @GeneratedValue(strategy = GenerationType.IDENTITY) 
    symbol: class GeneratedValue 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:30: error: cannot find symbol 
    @Basic(optional = false) 
    symbol: class Basic 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:31: error: cannot find symbol 
    @Column(name = "id") 
    symbol: class Column 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:33: error: cannot find symbol 
    @Basic(optional = false) 
    symbol: class Basic 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:34: error: cannot find symbol 
    @Column(name = "name") 
    symbol: class Column 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:36: error: cannot find symbol 
    @Basic(optional = false) 
    symbol: class Basic 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:37: error: cannot find symbol 
    @Column(name = "inherit_id") 
    symbol: class Column 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:39: error: cannot find symbol 
    @Basic(optional = false) 
    symbol: class Basic 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:40: error: cannot find symbol 
    @Column(name = "forum_id") 
    symbol: class Column 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:42: error: cannot find symbol 
    @Basic(optional = false) 
    symbol: class Basic 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:43: error: cannot find symbol 
    @Column(name = "groups_opt") 
    symbol: class Column 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:45: error: cannot find symbol 
    @Basic(optional = false) 
    symbol: class Basic 
    location: class Fud30Groups 
/home/thufir/NetBeansProjects/JavaApplication12/src/javaapplication12/Fud30Groups.java:46: error: cannot find symbol 
    @Column(name = "groups_opti") 
    symbol: class Column 
    location: class Fud30Groups 
18 errors 
/home/thufir/NetBeansProjects/JavaApplication12/nbproject/build-impl.xml:605: The following error occurred while executing this line: 
/home/thufir/NetBeansProjects/JavaApplication12/nbproject/build-impl.xml:246: Compile failed; see the compiler error output for details. 
BUILD FAILED (total time: 0 seconds) 

Deuxième partie de la question est, ce qui est (potentiellement) mal avec Netbeans? Jusqu'à hier, il semblait que l'IDE ajouterait automagiquement les classes requises au classpath lorsque, comme ici, générer une classe @Entity à partir d'une base de données existante. Dans ce cas particulier, Netbeans a ajouté des fichiers JAR. Cependant, comme ils sont ajoutés en externe au projet, il n'y a pas de dossier lib. Malheureusement, je ne connais pas assez encore pour plonger vraiment dans build.xml pour voir ce qui se passe, mais à partir du gestionnaire de bibliothèque, on dirait qu'ils sont comme si:

[email protected]:~$ tree netbeans-7.1.1/java/modules/ext/eclipselink/ 
netbeans-7.1.1/java/modules/ext/eclipselink/ 
├── eclipselink-2.3.0.jar 
├── eclipselink-jpa-modelgen-2.3.0.jar 
├── javax.persistence-2.0.jar 
└── org.eclipse.persistence.jpa.jpql_1.0.0.jar 

0 directories, 4 files 
[email protected]:~$ 

Il semble juste de ne pas à mes souvenirs que des étapes supplémentaires, en téléchargeant les JAR manquants, étaient nécessaires dans le passé. Un paramètre dans NetBeans peut-il être incorrect ou corrompu?

Répondre

0

Lucky number 13, projet Netbeans 13, aussi identique que possible au projet Netbeans 12, se construit bien (bien, pas bien, mais il ne construit):

propre et construire:

init: 
deps-clean: 
Updating property file: /home/thufir/NetBeansProjects/JavaApplication13/build/built-clean.properties 
Deleting directory /home/thufir/NetBeansProjects/JavaApplication13/build 
clean: 
init: 
deps-jar: 
Created dir: /home/thufir/NetBeansProjects/JavaApplication13/build 
Updating property file: /home/thufir/NetBeansProjects/JavaApplication13/build/built-jar.properties 
Created dir: /home/thufir/NetBeansProjects/JavaApplication13/build/classes 
Created dir: /home/thufir/NetBeansProjects/JavaApplication13/build/classes/META-INF 
Copying 1 file to /home/thufir/NetBeansProjects/JavaApplication13/build/classes/META-INF 
Created dir: /home/thufir/NetBeansProjects/JavaApplication13/build/empty 
Created dir: /home/thufir/NetBeansProjects/JavaApplication13/build/generated-sources/ap-source-output 
Compiling 2 source files to /home/thufir/NetBeansProjects/JavaApplication13/build/classes 
warning: Supported source version 'RELEASE_6' from annotation processor 'org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor' less than -source '1.7' 
Note: Creating non-static metadata factory ... 
Note: Found Option : eclipselink.canonicalmodel.use_static_factory, with value: false 
Note: Optional file was not found: META-INF/orm.xml continuing with generation. 
Note: Optional file was not found: META-INF/eclipselink-orm.xml continuing with generation. 
Note: Found Option : eclipselink.canonicalmodel.use_static_factory, with value: false 
Note: Optional file was not found: META-INF/orm.xml continuing with generation. 
Note: Optional file was not found: META-INF/eclipselink-orm.xml continuing with generation. 
warning: The following options were not recognized by any processor: '[eclipselink.canonicalmodel.use_static_factory]' 
1 warning 
Copying 2 files to /home/thufir/NetBeansProjects/JavaApplication13/build/classes 
compile: 
BUILD SUCCESSFUL (total time: 6 seconds) 

les deux projets:

[email protected]:~/NetBeansProjects$ 
[email protected]:~/NetBeansProjects$ tree JavaApplication12 
JavaApplication12 
├── build 
│   ├── built-jar.properties 
│   ├── classes 
│   │   └── META-INF 
│   │    └── persistence.xml 
│   ├── empty 
│   └── generated-sources 
│    └── ap-source-output 
├── build.xml 
├── manifest.mf 
├── nbproject 
│   ├── build-impl.xml 
│   ├── genfiles.properties 
│   ├── private 
│   │   └── private.properties 
│   ├── project.properties 
│   └── project.xml 
└── src 
    ├── javaapplication12 
    │   ├── Fud30Groups.java 
    │   └── JavaApplication12.java 
    └── META-INF 
     └── persistence.xml 

11 directories, 12 files 
[email protected]:~/NetBeansProjects$ 
[email protected]:~/NetBeansProjects$ tree JavaApplication13 
JavaApplication13 
├── build 
│   ├── built-jar.properties 
│   ├── classes 
│   │   ├── javaapplication13 
│   │   │   ├── Fud30Groups_.class 
│   │   │   ├── Fud30Groups.class 
│   │   │   ├── Fud30Groups.java 
│   │   │   ├── JavaApplication13.class 
│   │   │   └── JavaApplication13.java 
│   │   └── META-INF 
│   │    └── persistence.xml 
│   ├── empty 
│   └── generated-sources 
│    └── ap-source-output 
│     └── javaapplication13 
│      └── Fud30Groups_.java 
├── build.xml 
├── lib 
│   ├── CopyLibs 
│   │   └── org-netbeans-modules-java-j2seproject-copylibstask.jar 
│   ├── eclipselink 
│   │   ├── eclipselink-2.3.0.jar 
│   │   ├── javax.persistence-2.0.jar 
│   │   └── org.eclipse.persistence.jpa.jpql_1.0.0.jar 
│   ├── eclipselinkmodelgen 
│   │   └── eclipselink-jpa-modelgen-2.3.0.jar 
│   └── nblibraries.properties 
├── manifest.mf 
├── nbproject 
│   ├── build-impl.xml 
│   ├── genfiles.properties 
│   ├── private 
│   │   ├── config.properties 
│   │   └── private.properties 
│   ├── project.properties 
│   └── project.xml 
└── src 
    ├── javaapplication13 
    │   ├── Fud30Groups.java 
    │   └── JavaApplication13.java 
    └── META-INF 
     └── persistence.xml 

17 directories, 25 files 
[email protected]:~/NetBeansProjects$ 

La différence étant apparemment ce projet 13 a un dossier ./lib, tout projet 12 utilise du JAR « externe ».

Peut-être que mon installation NetBeans est corrompue, ou un mauvais réglage, ou que j'ai une mauvaise approche pour le projet 12? Je voudrais le faire avec des JAR externes, comme le fait le projet 12, parce que diverses fonctionnalités, comme le gestionnaire de bibliothèque, fonctionnent mieux.

Questions connexes