2016-01-07 1 views
0

Donc, sur eryler j'ai eu la brillante idée d'écrire ma propre bibliothèque avec un ensemble de classes pour différentes méthodes que je pourrais utiliser fréquemment. Avec ma nouvelle motivation pour être paresseux j'ai rapidement créé un nouveau projet Java, pour être une bibliothèque de classes Java.JAVA: Comment utiliser les bibliothèques importées dans Netbeans

Maintenant que je me suis écrit ma première classe dans cette bibliothèque et je ne peux pas comprendre comment implémenter (ne sais pas si c'est le bon mot ici), la bibliothèque dans mon application.

package pkg4332423423; 

import java.util.Scanner; 
import StringOperators.*; 

public class Main 
{ 
    private static Scanner sc = new Scanner(System.in);  

    public static void main(String[] args) 
    { 

    } 
} 

Roughtly Je pensais que cela fonctionnerait comme ça.

J'ai un paquet appelé StringOperators dans ce paquet que j'ai ma classe MyStringOperators.

J'ai déjà importé la bibliothèque grâce à rightclick et Properties.

Et ma question est la suivante: -Juste pour résumer
Comment diable saignement peut-je importer une bibliothèque que je me suis créé et utiliser toutes les classes et méthodes dans cette bibliothèque dans une application que je suis en train d'écrire?

et en tant que bonus rapide: Est-il possible de configurer l'implémentation de cette bibliothèque par défaut? Alors que c'est toujours inclus?

Merci à l'avance!


Edit:

Tout d'abord, merci à tous pour vos réponses!

J'ai essayé la suggestion du client Mavel ce qui est à quoi il ressemble here

Malheureusement, je ne peux pas cliquer sur l'onglet Projets ouverts. Avez-vous d'autres idées?

Et votre réponse a soulevé une autre question, pourquoi utiliser uniquement le client Mavel?

+0

Je pense que vous devez nettoyer et construire votre projet. Cela fait un "mvn clean install" Si vous posez la question sur le choix à faire, Ant et Maven, la question sera rapidement fermée car elle est basée sur l'opinion. 1) Le fait fondamental est que si vous voulez partager votre projet NB Ant avec d'autres développeurs qui utilisent Eclipse ou IntelliJ, ils vous donneront rapidement l'oeil puant, car ils auront besoin de passer par certains cerceaux pour le faire fonctionner. 2) Aussi, si vous voulez utiliser l'un des millions de dépendances Maven, NB peut vous aider avec Maven, mais dans le projet Ant, c'est à vous de le télécharger. – rjdkolb

+0

Pour la première fois que j'entends parler de Maven et Ant: D Je veux dire que j'ai lu Ant befor et Maven mais je ne me suis jamais confronté à ce sujet. On dirait qu'il est temps de le faire. Merci pour votre aide! –

Répondre

1

Vous n'avez pas besoin d'utiliser projet Maven, si vous préférez projet par défaut (Ant), vous pouvez le faire comme ça.

Fichier ->Nouveau projet ->classe Java Library
enter image description here

clic droit "Paquets sources" (ou "package par défaut") ->New - >Paquet Java: MyLib
Ajouter votre classe (clic droit paquet "MyLib" ->New ->classe Java): MyClass

MyClass.java:

package Mylib; 

public class MyClass { 

    public static void myFunction() { 
     System.out.println("This is a function of my lib"); 
    } 
} 

enter image description here

propre et construire "projet MyLib"
clic droit sur "bibliothèques" ->Ajouter la bibliothèque ->Créer: MyLib
et ajoutez votre fichier jar dans "classpath"

Maintenant, lorsque vous devez utiliser "MyLib" dans un projet, faites un clic droit sur "Librairies" -> Ajouter une bibliothèque et sélectionnez "MyLib" dans la liste.

enter image description here

À ce stade, vous pouvez utiliser votre lib dans votre projet.

MyApp.java:

package myapp; 

import MyLib.MyClass; 

public class MyApp { 

    public static void main(String[] args) { 
     MyClass.myFunction(); 
    } 

} 
+0

Beaucoup beaucoup de mercis Duffydake! –

+0

Aswell dans ma bibliothèque, dois-je déclarer mes méthodes "statiques"? Ou est-il possible d'utiliser des méthodes "non statiques" dans une méthode principale "statique"? Merci d'avance et bonne journée! –

+0

@MilesA. Oui, vous pouvez avoir une méthode "non-statique" et l'utiliser dans votre main ou ailleurs: E.g: Myclass myclass = new MyClass(), puis myclass.myNonStaticFunction(); – Duffydake

0

Faites un clic droit sur les bibliothèques (dans votre projet) puis ajoutez votre bibliothèque ..

+0

Déjà fait cela, mais comment puis-je utiliser cela dans mon code à partir de ce moment? E.g: J'ai la bibliothèque "MyLibrary" avec la classe "MyClass" avec la méthode "MyMethod". Maintenant j'ai ajouté la bibliothèque à mon projet mais comment puis-je accéder à "MyMethod"? –

+0

vous pouvez l'utiliser comme vous utilisez n'importe quelle autre classe (ajouter l'importation) – FuSsA

+0

A qui ne fonctionnait pas comme ça .. De toute façon l'astuce était de créer un paquet dans la bibliothèque et déplacer votre classe dans ce paquet pour y accéder. Aswell il était nécessaire de les mettre à Static. –

0

Si je vous ai droit, vous voulez faire de votre classe dans une bibliothèque et utiliser cette bibliothèque dans d'autres projets.

Pour ce faire, un coup d'oeil à la réponse this topic

Pour inclure votre propre bibliothèque, vous devez inclure dans votre build path

0

Ma première règle de Netbeans, est d'utiliser uniquement les projets Maven. Ainsi, lorsque vous créez un projet, sélectionnez Maven et l'application Java et jamais "Java ->" Application Java "Si vous utilisez la seconde option, il s'agit d'une application de type Ant, elle est assez similaire

Nettoyer et construire votre bibliothèque vous voulez réutiliser.

Sur le projet "myspecial-app", trouvez Dépendances et cliquez sur "Ajouter des dépendances" comme ci-dessous. (Myspecial-lib)

enter image description here

+0

Vous savez que 'ant' est aussi un excellent outil, donc' maven' n'est pas une exigence, c'est une question de goût. Vous pouvez mettre votre lib dans la "liste des bibliothèques" et l'ajouter à votre projet quand vous en avez besoin. – Duffydake

+0

@Duffydake, true. Je conseille généralement de ne pas déplacer le projet entre les IDE. Je sais que Ant a une certaine compatibilité, mais Maven est un citoyen de première classe au Nouveau-Brunswick. Alors oui, préférence personnelle :) – rjdkolb

+0

@Duffydake, j'ai modifié la réponse pour être un peu plus neutre entre Maven et Ant. – rjdkolb