package org.apache.commons n'existe pas
J'aimerais utiliser EnumeratedIntegerDistribution()
de org.apache.commons.math3.distribution
, pour obtenir discrètes probabilités de distribution
int[] nums_to_generate = new int[] { -1, 1, 0 };
double[] discrete_probabilities = new double[] { 0.4, 0.4, 0.2 };
Je travaille avec jdk7 , sur windows Xp, l'exécution en Ligne de Commande
Je fais:
- ajouter à mon fichier source
import org.apache.commons.math3;
- télécharger communes-math3-3.2 et décompresser à mon dossier en cours
- compiler ma source avec le classpath: ()
javac -cp ./commons-math3-3.2/commons-math3-3.2.jar:. ConflictsAnimation.java javac -cp commons-math3-3.2/commons-math3-3.2.jar ConflictsAnimation.java
Encore j'ai un mystérieux
"error: package org.apache.commons does not exist"
Qui sait ce qui se passe ? J'ai vraiment besoin d'aide.
Remarque:
compilation (et exécuter) est OK sans le classpath et sans le
l'importation de la "apache" et l'appel à la numeratedIntegerDistribution().compilation avec le classpath et sans le "appache"s donner
non-sens erreurs.
Merci beaucoup d'avance pour vos grandes compétences, les programmeurs!
Voici une petite démonstration:
import java.lang.Math.*;
import org.apache.commons.math3;
public class CheckMe {
public CheckMe() {
System.out.println("let us check it out");
System.out.println(generate_rand_distribution (10));
}
private static int[] generate_rand_distribution (int count){
int[] nums_to_generate = new int[] { -1, 1, 0 };
double[] discrete_probabilities = new double[] { 0.4, 0.4, 0.2 };
int[] samples = null;
EnumeratedIntegerDistribution distribution =
new EnumeratedIntegerDistribution(nums_to_generate, discrete_probabilities);
samples = distribution.sample (count);
return (samples);
}
public static void main (String args[]) {
System.out.println("Main: ");
CheckMe animation = new CheckMe();
}
}
Que sont exactement ces "non-sens" erreurs? Pouvez-vous montrer une courte mais programme de démonstration le problème?
Vous ne pouvez pas importer un package, vous devez importer les classes réelles. Vous aurez besoin de fournir plus d'informations pour obtenir de l'aide, même si, comme l'endroit où le pot et vos classes sont situées etc.
communes-math3-3.2 se trouve dans mon dossier avec mon fichier source. Je suis l'ajout d'un programme court d'avoir le même problème.
Si c'est dans votre dossier actuel, pourquoi êtes-vous en lui donnant un chemin d'accès au fichier jar?
Vous ne pouvez pas importer un package, vous devez importer les classes réelles. Vous aurez besoin de fournir plus d'informations pour obtenir de l'aide, même si, comme l'endroit où le pot et vos classes sont situées etc.
communes-math3-3.2 se trouve dans mon dossier avec mon fichier source. Je suis l'ajout d'un programme court d'avoir le même problème.
Si c'est dans votre dossier actuel, pourquoi êtes-vous en lui donnant un chemin d'accès au fichier jar?
OriginalL'auteur Galia | 2013-12-30
Vous devez vous connecter pour publier un commentaire.
C'est le problème:
Qui essaie d'importer un paquet - vous ne pouvez pas le faire. Vous devez utiliser un caractère générique d'importation:
ou de l'importation d'un type spécifique:
Dans votre cas, il semble que vous voulez vraiment:
J'ai essayé un échantillon de classe avec juste que l'importation et le fichier jar téléchargé à partir d'Apache, et il fonctionne très bien.
Salut Jon, la compilation a été fin, cependant ce apache peut-être pas été trouvé lors de l'exécution, ce qui semble provoquer une classe ne trouve pas exception à la règle. stackoverflow.com/questions/20954322/... Merci à vous pour quoi que ce soit.
Oui, selon la réponse, il vous faut le fichier jar dans le classpath lors de l'exécution, elle aussi.
oui il a résolu le problème. Mais les créé en quelque sorte une autre: l'un de mes exécutables java si je les lancer maintenant (qui ne sont pas à l'aide d'apache) échoue avec l'erreur de ne pas trouver le principe de la classe. Nether redémarrage, ni à l'aide de "." comme -cp argument de ce pas changer cela. Peut-il être relié au fait que j'ai maintenant Sdk et Jdk, mais Avant de running avec clathpass ce drapeau n'a pas de problème pour mes autres java exectutables.
Si le problème est autre, de créer une nouvelle question. Et si cette réponse réponse à la question d'origine de la marquer comme acceptée.
OriginalL'auteur Jon Skeet