Comment puis-je vérifier la version de sbt que j'utilise ?
J'ai mis en place le fichier bash qui utilise sbt-launch.jar
et ça marche, mais
$ sbt version
ne montre que la "version du projet" (0.1) et
$ sbt --version
ne fait rien.
Comment puis-je vérifier la version de sbt que j'utilise ?
J'ai mis en place le fichier bash qui utilise sbt-launch.jar
et ça marche, mais
$ sbt version
ne montre que la "version du projet" (0.1) et
$ sbt --version
ne fait rien.
$ sbt sbtVersion
Ceci imprime la version de sbt utilisée dans votre projet actuel, ou si c'est un projet multi-modules pour chaque module.
$ sbt 'inspect sbtVersion'
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] Setting: java.lang.String = 0.13.1
[info] Description:
[info] Provides the version of sbt. This setting should be not be modified.
[info] Provided by:
[info] */*:sbtVersion
[info] Defined at:
[info] (sbt.Defaults) Defaults.scala:68
[info] Delegates:
[info] *:sbtVersion
[info] {.}/*:sbtVersion
[info] */*:sbtVersion
[info] Related:
[info] */*:sbtVersion
Vous pouvez également utiliser sbt about
que (copier Commentaire de Mark Harrah ) :
La commande about a été ajoutée récemment pour essayer d'imprimer succinctement la informations les plus pertinentes, y compris la version de sbt.
Un indicateur de ligne de commande --version pourrait-il être envisagé ? C'est ce que les gens essaient en premier.
@MattR Je ne pourrais pas être plus d'accord avec vous... C'est curieux de savoir pourquoi cela n'a pas été la première pensée de l'auteur ou des auteurs de sbt.
Existe-t-il un moyen de définir les différentes versions de sbt pour les différentes versions de sbt ? sous-projets ?
Dans SBT 0.13 et plus, vous pouvez utiliser la fonction sbtVersion
(comme indiqué par @steffen) ou about
commande (comme indiqué par @mark-harrah)
Il y a une différence entre le sbtVersion
la tâche fonctionne dans et en dehors d'un projet SBT. Dans le cadre d'un projet TAS, sbtVersion
affiche la version du SBT utilisée par le projet et ses sous-projets.
$ sbt sbtVersion
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Updating {file:/Users/jacek/.sbt/0.13/plugins/}global-plugins...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Loading project definition from /Users/jacek/oss/scalania/project
[info] Set current project to scalania (in build file:/Users/jacek/oss/scalania/)
[info] exercises/*:sbtVersion
[info] 0.13.1-RC5
[info] scalania/*:sbtVersion
[info] 0.13.1-RC5
Il se déroule dans project/build.properties
:
jacek:~/oss/scalania
$ cat project/build.properties
sbt.version=0.13.1-RC5
La même tâche exécutée en dehors d'un projet SBT montre la version actuelle de l'exécutable lui-même.
jacek:~
$ sbt sbtVersion
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Updating {file:/Users/jacek/.sbt/0.13/plugins/}global-plugins...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] 0.13.0
Quand vous êtes à l'extérieur, le about
semble mieux convenir car elle indique la version de sbt ainsi que celle de Scala et des plugins disponibles.
jacek:~
$ sbt about
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] This is sbt 0.13.0
[info] The current project is {file:/Users/jacek/}jacek 0.1-SNAPSHOT
[info] The current project is built against Scala 2.10.2
[info] Available Plugins: com.typesafe.sbt.SbtGit, com.typesafe.sbt.SbtProguard, growl.GrowlingTests, org.sbtidea.SbtIdeaPlugin, com.timushev.sbt.updates.UpdatesPlugin
[info] sbt, sbt plugins, and build definitions are using Scala 2.10.2
Vous pouvez lancer la commande "help about" pour lire sa documentation :
jacek:~
$ sbt 'help about'
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
Displays basic information about sbt and the build.
Pour le sbtVersion
le paramètre inspect
peut vous aider.
$ sbt 'inspect sbtVersion'
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] Setting: java.lang.String = 0.13.0
[info] Description:
[info] Provides the version of sbt. This setting should be not be modified.
[info] Provided by:
[info] */*:sbtVersion
[info] Defined at:
[info] (sbt.Defaults) Defaults.scala:67
[info] Delegates:
[info] *:sbtVersion
[info] {.}/*:sbtVersion
[info] */*:sbtVersion
[info] Related:
[info] */*:sbtVersion
Le site version
Le paramètre que les gens semblent s'attendre à inspecter pour connaître la version du SBT est de définir La version/révision du module actuel .
$ sbt 'inspect version'
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Set current project to jacek (in build file:/Users/jacek/)
[info] Setting: java.lang.String = 0.1-SNAPSHOT
[info] Description:
[info] The version/revision of the current module.
[info] Provided by:
[info] */*:version
[info] Defined at:
[info] (sbt.Defaults) Defaults.scala:102
[info] Reverse dependencies:
[info] *:projectId
[info] *:isSnapshot
[info] Delegates:
[info] *:version
[info] {.}/*:version
[info] */*:version
[info] Related:
[info] */*:version
Lorsqu'elles sont utilisées dans un projet SBT, les tâches/réglages peuvent donner des résultats différents.
Peut-être utilisez-vous un lanceur sbt personnalisé, tel que sbt-extras, qui remplace la signification de l'option sbt-version
sur la ligne de commande. Sinon, je ne connais pas de différence entre sbt-version
à la ligne de commande et à l'invite. Ce devrait être la même chose sbtVersion
dans les deux cas.
Y a-t-il un moyen de définir les différentes versions de sbt pour les différents sous-projets ?
Vous pouvez utiliser sbt about
Example:
C:\\Users\\smala>sbt about
\[info\] Set current project to smala (in build file:/C:/Users/smala/)
\[info\] This is sbt 0.13.6
\[info\] The current project is {file:/C:/Users/smala/}smala 0.1-SNAPSHOT
\[info\] The current project is built against Scala 2.10.4
\[info\] Available Plugins: sbt.plugins.IvyPlugin, sbt.plugins.JvmPlugin, sbt.plugins.CorePlugin, sbt.plugins.JUnitXmlReportPlugin
\[info\] sbt, sbt plugins, and build definitions are using Scala 2.10.4"
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.