Le but de la programmation ruby est (généralement) soit d'écrire une application web, soit d'écrire un programme qui peut être exécuté à partir de la ligne de commande.
Pour une application Web une option rake run
pourrait être utile, mais vraiment le web cadre de applicaition le plus commun est Rails, et pour les rails, il vous suffit de lancer un serveur web dédié exécutant votre application Web avec script/server
.
Pour un programme de ligne de commande, il suffit d'exécuter le fichier selon Ruby, vous avez l'intention que le fichier principal (celui avec le code qui fonctionne au démarrage). Ruby n'a aucune des difficultés de Java (par exemple, avoir un fichier JAR avec l'attribut Main-class
correct, et obtenir le bon chemin de classe, etc ...). Vous n'avez donc pas vraiment besoin d'une cible rake run
, car il n'y a pas de complexité qui doit être cachée dans le rakefile.
L'idée a du sens, car c'est un programme en ligne de commande. Mais quand je cours ruby .rb, il soulève une erreur parce qu'il ne peut pas résoudre le bon chemin pour une classe qu'il doit utiliser. Pourquoi la ligne de commande a-t-elle un problème et NetBeans ne le fait pas? –
Mike
@Mike - Utilisez-vous Ruby 1.9.2? Si c'est le cas, alors votre problème pourrait être parce qu'il n'inclut pas le répertoire courant dans le chemin que ruby utilise pour trouver des scripts ruby. Vous pouvez corriger cela en ajoutant votre projet à la variable d'environnement RUBYLIB. – Jeremy
Netbeans ajoute probablement le chemin du projet à '$:' pour que 'require' puisse être résolu par rapport à lui. Cela peut généralement être corrigé en mettant $: << File.dirname (__ FILE __) 'dans le fichier que vous prévoyez d'exécuter. Vous pouvez également utiliser la gemme Facets ou la gemme Extensions, et vous obtiendrez 'require_relative' qui peut également résoudre ce problème. ('require_relative' est intégré dans Ruby 1.9.2) –