Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Rubynel AL2023
Rubyruby3.2 ruby3.4 Ruby3.4 fornisce anche il binario con namespace MRI (Matz's Ruby Interpreter)ruby3.4-mri, che si riferisce all'implementazione di riferimento standard basata su C di. Ruby Tuttavia, può essere attiva solo una Ruby versione alla volta. Questa versione attiva fornisce le directory e i nomi di file predefiniti, come ruby, gem o bundle, indirizzandoli al runtime attualmente attivo.
Ciò si ottiene utilizzando le funzionalità dello strumento delle alternative. È importante ricordare che i nomi eseguibili predefiniti sono virtuali e possono cambiare in qualsiasi momento quando si fa riferimento a una Ruby versione installata diversa. Questa flessibilità consente al software che utilizza ruby in the shebang di selezionare la versione desiderata quando viene richiamata. Tuttavia, quando Ruby è richiesta una versione specifica di, è possibile ottenere la persistenza della versione chiamando l'eseguibile con namespace (ad esempio ruby3.2 orruby3.4), che utilizzerà sempre la versione specificata del runtime. Inoltre, gli eseguibili con namespace degli strumenti gem e bundler, come,,, orruby3.2-gem, ruby3.4-gem sono sempre associati alla ruby3.2-bundler versione corrispondenteruby3.4-bundler, indipendentemente dal runtime attualmente attivo. Ruby
Rubyè distribuito come diversi pacchetti con namespace che iniziano con "». ruby{MAJOR.MINOR} Questi pacchetti forniscono ruby, versioni compatibili degli strumenti gem e bundler, documentazione, librerie e altro. Ad esempio, il runtime core Ruby 3.2 è fornito dal ruby3.2 pacchetto, che inserisce ruby3.2-rubygems (fornendo gem) e ruby3.2-rubygem-bundler (fornendo bundle e bundler) come dipendenze.
Dopo aver installato una Ruby versione, le voci relative agli strumenti complementari potrebbero essere visualizzate come nulle nella configurazione delle alternative. Questo può essere verificato alternatives --display ruby eseguendo. Se le voci appaiono come nulle, devono essere registrate manualmente utilizzandoalternatives --install. Ad esempio, per registrare tutti gli strumenti complementari per Ruby 3.4:
sudo alternatives --install /usr/bin/gem gem /usr/bin/ruby3.4-gem 34 sudo alternatives --install /usr/bin/bundle bundle /usr/bin/ruby3.4-bundle 34 sudo alternatives --install /usr/bin/bundler bundler /usr/bin/ruby3.4-bundler 34 sudo alternatives --install /usr/bin/erb erb /usr/bin/ruby3.4-erb 34 sudo alternatives --install /usr/bin/racc racc /usr/bin/ruby3.4-racc 34 sudo alternatives --install /usr/bin/rdoc rdoc /usr/bin/ruby3.4-rdoc 34 sudo alternatives --install /usr/bin/ri ri /usr/bin/ruby3.4-ri 34
Il valore di priorità (ad esempio, 34 per Ruby 3.4, 32 per Ruby 3.2) deve corrispondere alla priorità utilizzata nella voce alternativa principale di ruby. Una volta registrati, gli strumenti complementari verranno gestiti automaticamente insieme all'alternativa ruby.
Lo strumento delle alternative fornisce un unico comando per passare da una Ruby versione all'altra. Per impostazione predefinita, le alternative sono configurate per essere in modalità auto, che utilizza le priorità per determinare la Ruby versione attualmente attiva. Tuttavia, è possibile attivare qualsiasi versione installata in qualsiasi momento. Attualmente, tutte le versioni supportate di Ruby hanno la stessa priorità, il che significa che la prima versione installata verrà attivata automaticamente.
Alcuni esempi utili di utilizzo di alternative
-
Controlla per quali alternative è configurato
alternatives --list -
Controlla la configurazione attuale di ruby
alternatives --display ruby -
Cambia la versione in modo interattivo Ruby
alternatives --config ruby -
Passa alla modalità manuale e seleziona una versione specifica
alternatives --set ruby /usr/bin/ruby{MAJOR.MINOR} -
Torna alla modalità di selezione automatica della versione
alternatives --auto ruby