J'essaie de me familiariser avec les bases de jena, mais lorsque j'importe le paquet avec
export JENA_HOME=~/api/apache-jena-3.10.0 export PATH=$PATH:$JENA_HOME/bin
et que je compile avec
javac -cp "~/api/apache-jena-3.10.0/lib/*:." Foo.java
J'obtiens juste l'erreur sur la ligne d'importation que le package n'existe pas.
J'ai vérifié que le dossier est là où il devrait être, il est fraîchement installé, j'ai exporté le chemin avec p>
import org.apache.jena.rdf.model.*;
comme suggéré par la page d'accueil de jena, a confirmé qu'il était installé avec "sparql --version", et testé que "cd $ JENA_HOME" fonctionne comme prévu. Je ne trouve pas non plus de message avec le même problème.
J'apprécierais beaucoup de l'aide!
3 Réponses :
Exportez le chemin de la variable JENA_HOME sous
export JENA_HOME=~/api/apache-jena-3.10.0/lib/*
Essayez d'exécuter avec ce javac -cp "~ / api / apache-jena-3.10.0 / lib / *" Foo.java
Vous ne pouvez pas mettre ~ à l'intérieur de "" et le développer. Et vous ne voulez pas que le "*" se développe. Essayez "$ HOME / api / apache-jena-3.10.0 / lib / *"
ou ~ / api / apache-jena-3.10.0 / lib / \ *
Enfin, il compile! Merci beaucoup :) Je ne savais pas à propos de ~ et "".
Super - transformé en une réponse pour le compte rendu - veuillez vérifier et accepter.
Les règles d'expansion pour ~
et *
sont telles que ~
est remplacé par votre répertoire personnel en dehors d'une chaîne "", mais laissé seul à l'intérieur et *
correspond au système de fichiers à l'extérieur "" mais pas à l'intérieur.
Vous voulez laisser *
seul, pour que Java le voie (il a une signification spéciale pour -cp
- il ne correspond qu'aux fichiers jar).
Essayez "$ HOME / api / apache-jena-3.10.0 / lib / *" ou ~ / api / apache-jena-3.10.0 / lib / *
Dans le premier, les règles $ var
s'appliquent et $ HOME
est remplacé et le *
reste intact.
Dans le second, le ~
est remplacé et le *
est échappé, donc il est laissé seul. Attention, il ne se développe pas plus tard lors de son utilisation. Si vous affectez à une variable, par ex. dans export
utilisez "" autour de toute utilisation de la variable.
Dans mon cas, car selon le pom.xml
<resources> <resource> <!-- Use resource filtering to replace references to the artifactId in the plugin.xml file --> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources>
Nous devrions donc mettre les fichiers jar dans les fichiers de ressources, puis le projet sera compilé normalement