web-dev-qa-db-fra.com

Trouver le fichier .class compilé par Eclipse

Des questions):

Comment suis-je censé compiler une seule classe? Comment puis-je le mettre dans le fichier de classe (que j'ai créé)? Eclipse ne compile-t-il pas automatiquement toutes les classes au moment de l'exécution?

L'histoire en arrière:

Je suis un tutorial et il me dit de:

Placez la classe compilée dans WEB-INF/classes.

Où est la classe:

package org.odata4j.Tomcat;
import Java.util.Properties;
import org.core4j.Enumerable;
import org.core4j.Func;
import org.core4j.Funcs;
import org.odata4j.producer.ODataProducer;
import org.odata4j.producer.ODataProducerFactory;
import org.odata4j.producer.inmemory.InMemoryProducer;

public class ExampleProducerFactory implements ODataProducerFactory {

  @Override
  public ODataProducer create(Properties properties) {
    InMemoryProducer producer = new InMemoryProducer("example");

    // expose this jvm's thread information (Thread instances) as an entity-set called "Threads"
producer.register(Thread.class, Long.class, "Threads", new Func<Iterable<Thread>>() {
  public Iterable<Thread> apply() {
    ThreadGroup tg = Thread.currentThread().getThreadGroup();
    while (tg.getParent() != null)
      tg = tg.getParent();
    Thread[] threads = new Thread[1000];
    int count = tg.enumerate(threads, true);
    return Enumerable.create(threads).take(count);
  }
}, Funcs.method(Thread.class, Long.class, "getId"));

return producer;
  }
 }
10
AllieCat

Lorsque vous enregistrez votre fichier .Java, Eclipse le compilera dans un fichier .class s'il n'y a pas d'erreur de compilation. Vous pouvez généralement trouver ce fichier dans le sous-répertoire bin de votre projet. En particulier, il sera dans bin/org/odata4j/Tomcat car vous avez déclaré que votre classe appartenait au package org.odata4j.Tomcat. N'hésitez pas à copier ce fichier où vous le souhaitez.

8
Code-Apprentice

Je trouve mes fichiers de classes dans Projet -> Propriétés -> Chemin de construction Java dans le champ Dossier de sortie par défaut . Pour moi, le nom par défaut était 'nom-projet/cible/classes'.

3
Mateus Galasso

votre emplacement de fichier Java doit être: org/odata4j/Tomcat/ExampleProducerFactory.Java vous pouvez alors, en ligne de commande, faire: javac org/odata4j/Tomcat/ExampleProducerFactory.Java qui créera le fichier de classe compilé: org/odata4j/Tomcat/ExampleProducerFactory.class mettez-le dans un dossier WEB-INF/classes/org/odata4j/Tomcat/ExampleProducerFactory.class

mais mieux encore, créez un "projet Web dynamique" dans Eclipse, qui se chargera de tout pour vous (utilisez uniquement les valeurs par défaut). le résultat final sera un fichier .war que vous pouvez créer avec l'option de menu: fichier-> exporter

un tel fichier .war peut être déployé dans n’importe quel conteneur Web tel que Tomcat. recherchez un répertoire de déploiement automatique dans votre Tomcat ou utilisez la console de gestion Tomcat pour le déployer.

2
necromancer

Une fois le fichier .Java compilé avec succès, le fichier .class sera placé dans le dossier bin sous le projet workspace .

1
Bipin

Pour que cela fonctionne correctement dans Eclipse, vous devez travailler dans un "projet Web dynamique" et non dans un "projet Java" standard, qui n'est pas disponible dans le téléchargement Java standard de Eclipse. 

Vous devez soit télécharger et utiliser la version Java EE d’Eclipse, soit ajouter le protocole WTP à votre installation actuelle pour l’obtenir.

Notez que le moyen le plus simple de se familiariser avec une application Web simple consiste à utiliser Netbeans, qui est correctement câblé par défaut (y compris un Tomcat) dans la version Java EE.

J'ouvre simplement l'emplacement du fichier Java (dans Package Explorer, faites un clic droit -> Afficher dans -> Explorateur système), allez en haut de l'espace de travail et recherchez le nom du fichier sans extension . Le fichier .class ainsi bien. Je viens de le supprimer. 

0
Amol Ramkrishna Patil

En supposant que cette classe soit dans un fichier appelé ExampleProducerFactory.Java, vous pouvez la compiler en ligne de commande en allant dans le répertoire contenant le fichier et en tapant

javac ExampleProducerFactory.Java

Cela créera un fichier nommé ExampleProducerFactory.class que vous pourrez déplacer dans le répertoire souhaité.

0
Brian