2016-01-23 1 views
1

J'essaie de suivre le tutoriel PredictionIO pour un engin de classification de texte provided here. J'utilise OSX et PredictionIO avec PostgreSQL.PredictionIO: Installation du pilote JDBC pour postgresql sous OSX

Lorsque vous essayez d'importer des données dans mon App nu avec la commande

pio import --appid 1 --input data/stopwords.json 

Je reçois l'erreur suivante:

Exception in thread "main" java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost/pio 

Alors, évidemment, le pilote JDBC est manquant ou non lié de façon appropriée. Voici où mes problèmes commencent. Naively j'ai téléchargé le pilote postgres jdbc from this source. Je lis que je dois l'ajouter à « CLASSPATH » java, donc j'ai essayé en ajoutant

export CLASSPATH=$CLASSPATH:~/java-extensions/postgresql-9.4.1207.jre6.jar 

à ma configuration bash. Malheureusement, cela ne fonctionne pas. Une situation d'erreur similaire est discutée here - mais à ma connaissance, je ne suis pas en mesure d'extraire des conseils utiles de celui-ci.

-

détails Version:

psql (PostgreSQL) 9.4.5 installé via homebrew

OSX Yosemite

PredictionIO 0.9.5

pio status rapports " Votre système est prêt à fonctionner. "

+0

Avez-vous exécutez 'install.sh', car il semble que cela télécharge le pilote. Notez que la définition de la variable d'environnement 'CLASSPATH' ne fonctionne généralement pas bien car beaucoup d'applications Java ne l'utilisent pas réellement (pas sûr si cela s'applique à predictionio) –

+0

Oui, j'ai d'abord lancé' install.sh' de predictionio et son La sortie m'a dit que je devais installer PostgreSQL manuellement (mais il était déjà installé sur ma machine auparavant, donc j'ai seulement créé un rôle et une base de données pour PredictionIO). –

+0

Copie possible de [Erreur avec pio import] (http://stackoverflow.com/questions/33691711/error-with-pio-import) – alex9311

Répondre

3

Comme alex9311 a fait remarquer, le pio import accepte aujourd'hui un drapeau pour indiquer l'emplacement du pilote:

pio import --appid 1 --input data/stopwords.json --driver-class-path WHEREVER/postgresql-9.4-1204-jdbc41.jar 

Voir aussi this SO question

3

Voir ce fil groupe Google: https://groups.google.com/d/topic/predictionio-user/yJexMh5HpHc/discussion

tl; dr:

fixe dans la prochaine version de PredictionIO (v0.9.6), à venir bientôt.

Solution pour les versions PIO antérieures:

pio train -- --driver-class-path WHEREVER/postgresql-9.4-1204-jdbc41.jar 
+0

Comme indiqué initialement je connais déjà le groupe Google, mais cette solution ne fonctionne pas avec le Commande 'pio import', car elle ne possède pas d'indicateur' --driver-class-path' à définir. Savez-vous si le problème est résolu pour la commande 'pio import' dans la prochaine version? –

+1

J'ai réussi à obtenir le drapeau --driver-class-path travaillant avec l'importation, je vais l'ajouter à la réponse – alex9311

+0

modifier pour ajouter que la réponse a été rejetée :( – alex9311