J'utilise Android Studio et souhaitez utiliser framework ORMLITE. ORMLITE FOR Android a un mécanisme de création DAO via fichier de configuration de tablea .
Comment configurer une configuration d'exécution supplémentaire dans Android Studio pour générer cette configuration?
Recueillir tous les commentaires sous la réponse de @ Joao m'a donné cette solution de travail:
1) Modifier la configuration pour votre générateur de fichiers de configuration DB:
2) Configurez le Working directory
être $MODULE_DIR$/src/main
.
3) dans Before launch
, remplacer Make
avec Make, no error check
Lorsque vous avez ces étapes en place, vous pouvez spécifier simplement le nom de fichier dans votre classe OrmLiteConfigUtil
classe:
public class DBConfigUtil extends OrmLiteConfigUtil {
/**
* To make this work in Android Studio, you may need to update your
* Run Configuration as explained here:
* http://stackoverflow.com/a/17332546
*/
public static void main(String[] args) throws Exception {
writeConfigFile("ormlite_config.txt", sClasses);
}
J'ai eu le même numéro OP pour la classe de classeNotFoundException. La solution de contournement est de modifier temporairement le code pour rendre le compilateur à compiler le projet.
Je devais supprimer la valeur r.raw.ormlite_config que j'ai utilisée dans la classe de base de donnéesHelper, que je passe au Super ().
public class DBConfigUtil extends OrmLiteConfigUtil {
private static final Class<?>[] classes = new Class[] {Workout.class};
public static void main(String[] args) throws IOException, SQLException {
writeConfigFile("ormlite_config.txt",classes);
}
}
Ma classe DBHelper qui étend l'étend ORMLITESQLITEOPENHELLOPE doit encore utiliser le dossier RAW. Cela aide à compiler le projet avec succès.
public DBHelper(Context context){
super(context,DATABASE_NAME,null,DATABASE_VERSION,1);// R.raw.ormlite_config
}
J'ai eu des problèmes avec cela parce que mes classes de base de données ont été définies dans un Java project externe à mon Android. Mais l'ormliteconfigututil est défini dans la bibliothèque Ormlite-Android. et doit être construit dans le Android projet lui-même.
C'est bon, gris prévoit que. Il y a une surcharge de WriteConfigfile qui accepte les arguments de fichier spécifiant le répertoire de recherche.
public class DatabaseConfigUtil extends OrmLiteConfigUtil {
public static void main(String[] args) throws Exception {
File conffile = new File("app/src/main/res/raw/ormlite_config.txt");
File searchdir = new File("../jclip/tdb/src/main/Java/");
writeConfigFile(conffile, searchdir);
}
}
modifiez le "répertoire de travail" en/src/la principale du projet dans "Modifier les configurations"