Android Studio configuration d'essai pour ORMLite config génération
Je suis en utilisant Android Studio et que vous voulez utiliser ORMLite cadre. ORMLite pour Android dispose d'un mécanisme pour faire le DAO de la création à travers la tableau de fichier de config.
Comment le programme d'installation supplémentaires de Configuration d'Exécution dans Android Studio pour la création de cette config?
- Regardez ici aussi. C'est la façon de l'installer sur Android Studio stackoverflow.com/a/31946807/976550
Vous devez vous connecter pour publier un commentaire.
J'ai réussi à le faire, mais c'était un peu difficile.
J'ai une classe appelée DatabaseConfigUtil qui s'étend OrmLiteConfigUtil, que j'ai créé par le ormlite tutoriel officiel, donc je vais supposer que vous avez fait la même chose et aussi avoir la classe. Veuillez noter que vous devez passer le chemin d'accès complet vers le fichier de configuration, au lieu de simplement le nom de fichier. Néanmoins, elle est ici:
C'est la classe, nous voulons exécuter dans le but de créer de la ormlite_config.txt.
Dans l'Android Studio de projet panneau de navigation, cliquez-droit sur l'DatabaseConfigUtil.java sélectionnez "Exécuter" (l'option avec la flèche verte). Si vous n'avez pas de Configuration d'Exécution créé, il va en créer un pour vous.
Maintenant, il suffit de modifier la configuration
Dans la "Avant le lancement de la" section, enlever le Faire. Ce n'est pas problématique si dans les premières dossier que vous avez déjà le fichier ormlite_config.txt mais si vous ne le faites pas, lorsque vous exécutez la classe, le projet de compilation qui va échouer parce que le ormlite_config.txt n'existe pas.
Maintenant, exécutez à nouveau le projet.
Tout devrait bien se passer maintenant.
Acclamations
---------------------------- ## ----------------------------
Mise à JOUR:
Récemment, j'ai eu à travailler avec ORMLite de nouveau et a décidé que cette solution pourrait être automatisée avec un plugin gradle. Avant de créer mon propre, comme le paresseux développeur que je suis, j'ai décidé de vérifier si quelqu'un avait tenté de faire de même avant de. Heureusement, @snicolas a fait juste que, et vous pouvez trouver son plugin ici. Je l'ai essayé et il fonctionne raisonnablement bien. Il crée une tâche appelée
createORMLiteConfigFile*Variant*
que vous pouvez exécuter pour générer le fichier.Exception in thread "main" java.lang.ClassNotFoundException: my.package.DatabaseConfigUtil
writeConfigFile("ormlite_config.txt");
seulement, vous devez définirWorking Directory
dansEdit Configurations
à<YOUR-WORKING-DIR>/src/main
. ORMLite pu trouver l'annuaire brut automatiquement.$MODULE_DIR$
variable dans leWorking Directory
terrain afin de faire de cette croix-plate-forme et de se débarrasser de cette configuration d'exécution dans le contrôle de source:$MODULE_DIR$/src/main
Collecter tous les commentaires sous @Joao réponse m'a donné cette solution de travail:
1) Modifier la Configuration de votre base de données fichier de configuration du générateur:
2) Configurer le
Working directory
être$MODULE_DIR$/src/main
.3) Dans
Before launch
, remplacerMake
avecMake, no error check
Quand vous avez ces mesures en place, vous pouvez spécifier le nom de fichier dans votre
OrmLiteConfigUtil
classe:J'ai eu le même problème OP reçu pour la ClassNotFoundException. La solution de contournement pour ce qui est temporairement modifier le code pour faire le compilateur pour compiler le projet.
J'ai dû enlever le R. raw.ormlite_config valeur que j'ai utilisé dans le DatabaseHelper classe, que je suis de passage pour le super().
Mon DBHelper classe qui étend la prolonge OrmLiteSqliteOpenHelper doit pas utiliser le raw dossier encore. Cela permet de compiler le projet avec succès.
Ok je stumpled sur le même ClassNotFoundException comme l'OP. Voici comment je l'ai résolu:
Petite remarque: j'ai un projet d'une bibliothèque et d'un projet principal et les deux sont mis en place avec Gradle, qui pourrait être tout à fait une différence que précédemment appelé solution n'a pas fonctionné pour mon installation.
Mes pas à faire:
J'ai créé le DatabaseConfigUtil classe
Remarque le chemin de classe que j'ai utilisé dans ma documentation: Il est essentiellement basé sur le chemin de classe normale, vous obtenez lorsque vous essayez d'exécuter la classe ci-dessus (il suffit de le copier)
VM options
Vous devriez voir la sortie que les classes que vous avez défini dans
MODELS
sont créés.Note de côté: Joao Sousa dit que vous devriez changer le ORMlite code source. Il y a une méthode plus simple: Le
writeConfigFile(fileName)
méthode semble être cassé dans la nouvelle Gradle structure qu'il commence à regarder dans le module de la racine et monte au lieu de descendre àsrc/main/res/raw
j'ai donc besoin d'utiliser les autres où je pouvais donner un objet de fichier en paramètre (voir code ci-dessus).Note finale: Comme j'essaie de faire beaucoup de choses sur la une de la presse, j'ai créé une deuxième configuration d'exécution qui est appelé "PROJECTNAME PLEIN" qui va faire un "make" que dirige le ormlite configuration d'exécution et, enfin, un deuxième "FAIRE".
La première faire compile les sources afin que le ormlite de configuration peut être créé et le deuxième "faire" permet de s'assurer que le nouveau fichier de configuration est ajouté à la fonction nouvellement créée de construire qui sera installé ensuite. Ce "PLEIN" de la configuration n'a pas besoin d'exécuter à chaque fois mais au moins une fois lorsque vous avez modifié votre modèle de classes.
J'ai eu du mal avec cela parce que mon DB classes ont été définies dans un projet Java externe pour mon projet android. Mais le OrmLiteConfigUtil est définie dans le ormlite-android bibliothèque, et doit être intégré dans le projet android lui-même.
C'est OK, le Gris des plans à l'avance. Il y a une surcharge de writeConfigFile qui accepte les arguments de Fichier en spécifiant le répertoire de recherche.
changer le "répertoire de travail" à /src/main du projet dans la section "Modifier les Configurations"