2017-10-03 5 views
0

que je fais mes devoirs ou mon école présentation workclass/d'affectation sur les questions de planètes inconnues Région, en utilisant parsecs, unités de diamètre et de température, sur Mac et Linux . J'ai appliqué FuzzyVariable aux noms et aux unités des planètes.Jess n'a pas ou ne trouve pas package FuzzyVariable sur Linux et Mac OS

I ajouté (import nrc.fuzzy.*).

;Distância do Coruscant 
(defglobal ?*gVarDistanciaDeCoruscant* = (new nrc.fuzzy.FuzzyVariable "distanciaDeCoruscant" 0.0 30000.0 "parsecs")) 

;Temperatura dos Planetas 
(defglobal ?*gVarTemperatura* = (new nrc.fuzzy.FuzzyVariable "temperatura" 0 8000 "K")) 

;Planetas Vizinhos 
(defglobal ?*gVarPlanetasVizinhos* = (new nrc.fuzzy.FuzzyVariable "distanciaPlanetasVizinhos" 0.0 400000.0 "d")) 

;Raio em termos de unidades coruscantenses 
(defglobal ?*gVarTamanho* = (new nrc.fuzzy.FuzzyVariable "tamanho" 0 500 "EU")) 

;Quando o planeta foi descoberto 
(defglobal ?*gVarDescobertaTempo* = (new nrc.fuzzy.FuzzyVariable "descoberta" 50000BBY 400ABY)) 

(call nrc.fuzzy.FuzzyValue setMatchThreshold 0.1) 

Et le terminal, Jess a donné l'erreur:

Jess reported an error in routine new 
    while executing (new nrc.fuzzy.FuzzyVariable "distanciaDeCoruscant" 0.0 30000.0 "parsec") 
    while executing definition for defglobal ?*gVarDistanciaDeCoruscant* 
    while executing (batch "/Users/UNISAL/Documents/AI/StarWars.clp"). 
    Message: Class nrc.fuzzy.FuzzyVariable not found. 
    Program text: (defglobal ?*gVarDistanciaDeCoruscant* = (new nrc.fuzzy.FuzzyVariable "distanciaDeCoruscant" 0.0 30000.0 "parsec")) at line 26 in file /Users/UNISAL/Documents/AI/StarWars.clp. 

Nested exception is: 
nrc.fuzzy.FuzzyVariable 

Je pense que Mac et Linux ne sont pas ce paquet pour Jess. Est-il possible d'ajouter un paquet manqué compatible avec Mac et Linux?

J'ai besoin de livrer ma présentation workclass/affectation à mon professeur pour obtenir une bonne qualité.

Vous pouvez consulter le document entier: https://gist.github.com/gusbemacbe/8ad836256edcfb5edbffe206cad6c9e8

+0

CLASSPATH Très probablement n'est pas réglé pour inclure 'nrc.fuzzy.FuzzyVariable'. – laune

Répondre

0

La distribution de base de Jess ne comprend pas FuzzyJ; vous devez l'installer séparément, l'inclure dans le classpath, puis lancer avec FuzzyMain au lieu de la norme Jess.Main. Votre instructeur aurait dû vous dire tout cela. Si vous n'avez pas FuzzyJ, vous pouvez le télécharger à partir de la page «Contributions des utilisateurs» sur le site Web de Jess: http://www.jessrules.com/contributions/.

+0

J'ai lu les instructions d'installation, mais je suis confus. Est-ce qu'il me demande d'extraire fuzzyJ12.jar et de copier une des classes? ou simplement ajouter un chemin de classe de fuzzyJ12.jar dans le fichier clp? –

+0

Le "classpath" fait référence aux informations que vous donnez à Java lors du démarrage d'un programme; au moment où un script Jess est lu, il est trop tard. Vous n'extrayez pas les fichiers jar. –

+0

Mon professeur a échoué. J'ai lu cela pour ajouter le pot de Fuzzy à Jess, je dois utiliser les plugins Eclipse et JessIDE, mais quand j'ai copié la fonctionnalité JessIDE et les plugins dans les dossiers de fonctionnalités et de plugins d'Eclipse, JessIDE n'est pas apparu. Je mets dans le 'myusername/.p2/pool/plugins' et aussi' Eclipse.app/... Eclipse/plugins'. –