2012-03-17 2 views
4

[FERMÉ - je devais passer des cours de test/java à main/java et mettre à jour le repository via l'EDI « Options maven »]Impossible de trouver la classe de projet de dépendance maven

Je suis nouveau Maven et inexpérimenté avec le développement de Java. J'utilise IntelliJ Idea comme IDE. J'utilise Maven 3.0.4.

J'ai créé un "projet A" et un "projet B", chacun avec quelques classes. Maintenant, quand j'essaie de créer une dépendance dans projet A à une classe dans projet B Je ne trouve pas de classes qui font partie de projet B. Lorsque je vérifie le référentiel maven, je peux voir qu'un fichier .jar est créé sur la base du projet B.

Pour clarifier: lors de l'ajout d'une dépendance à projet B Je ne trouver un artefact appelé « projet B » mais je ne peut trouver toutes les classes qui font partie du projet B.

Il ne semble pas que je peux accéder et utiliser l'une des classes qui font partie du projet B intérieur projet Un qui rendrait cette installation sans valeur.

-

S'il vous plaît me dire quelles sont les informations que je devrais inclure pour vous me aider à résoudre ce problème.

[EDIT] Voici le projet Une pom de avec une dépendance à l'égard projet B. Cependant, je ne comprends pas comment l'utiliser dans mon projet ou cela ne fonctionne pas. Bien que je puisse utiliser la fonctionnalité d'IntelliJ pour trouver et ajouter l'artefact, intelliJ ne semble pas trouver de classes faisant partie du projet projet B (alors qu'il trouve des classes qui font partie d'autres paquets prédéfinis dans le référentiel maven) :

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>planet</groupId> 
    <artifactId>planet</artifactId> 
    <version>1.0</version> 
    <dependencies> 
     <dependency> 
      <groupId>toolbox</groupId> 
      <artifactId>toolbox</artifactId> 
      <version>1.0</version> 
     </dependency> 
    </dependencies> 


</project> 
+1

Les poms, au moins, les parties concernées (par exemple, au moins les informations d'artefact et la dépendance de A sur B) . Comment vous ajoutez la dépendance. Qu'est-ce que cela signifie quand vous dites "ne peut pas trouver des classes qui font partie du projet B". –

+0

La dépendance de A sur B ne se termine pas dans le pom. C'est ce que j'essaie d'accomplir. IntelliJ a une fonction pour ajouter des dépendances et des recherches soit par artefact ou par classe. C'est ce que je veux dire par "ne trouve pas de classes qui font partie du * projet B *". – user8363

+0

Ajoutez simplement la dépendance; Je ne sais pas comment ça fait sa recherche de classe - vérifiez les docs. –

Répondre

6

J'ai dû déplacer mes classes de test/java à main/java. Silly, mais il m'a fallu une journée entière pour réaliser cela. Cela n'a fonctionné qu'après la mise à jour du référentiel dans "maven options" via l'IDE.

+0

Les classes importées ou les classes effectuant l'importation? –

1

Vous pouvez effectuer les opérations suivantes:

<dependency> 
    <groupId>toolbox</groupId> 
    <artifactId>toolbox</artifactId> 
    <version>1.0</version> 
    <type>test-jar</type> 
    <scope>test</scope> 
</dependency> 

Works pour moi :)

Questions connexes