dotnex 1.0.0
dotnet tool install --global dotnex --version 1.0.0
dotnet new tool-manifest # if you are setting up this repo dotnet tool install --local dotnex --version 1.0.0
#tool dotnet:?package=dotnex&version=1.0.0
nuke :add-package dotnex --version 1.0.0
dotnex
A simple .NET tool to execute other dotnet tools without installing them globally or in a project (a similar approach to npx from npm).
About
This simple tool provides the minimum necessary to run dotnet tools without the need of installing them globally or in a project, since this is not yet supported in dotnet cli.
Features:
Cache. This tool provides caching of used tools in a temporary directory (for better performance).
Version and framework selection. You can specify whatever version you want and the target framework to use in every run.
SourceLink for debugging. The binaries can be debbuged with Source Link. Example (with Developer Command Prompt for VS):
devenv /debugexe c:\Users\rich\.dotnet\tools\dotnex.exe
Symbols package. A symbols package is published too in the publish process in order to ease the debugging of the NuGet package.
Usage
dotnex [options] <TOOL> [<TOOL-ARGS>...]
Where the arguments and options are the following:
Arguments:
<TOOL> The NuGet Package Id of the tool to execute []
<TOOL-ARGS> Arguments to pass to the tool to execute
Options:
-v, --use-version <use-version> Version of the tool to use
-f, --framework <framework> Target framework for the tool
-r, --remove-cache Flag to remove the local cache before running the tool (can be run without tool)
--version Show version information
-?, -h, --help Show help and usage information
This same output can be obtained running the tool with the help option:
dotnex -h
Example with the simple dotnetsay
tool:
dotnex dotnetsay Hello World!!
Installation
Install the dotnet cli (included in the .NET SDK) and then run the following command:
dotnet tool install -g dotnex
SDK version
dotnex
is published for all current supported SDKs from Microsoft:
- .NET Core 3.1.x
- .NET 5.0.x
- .NET 6.0.x
The main idea is to maintain dotnex
up-to-date with all current supported SDKs from Microsoft.
Contributions
Feel free to open an issue or a PR if you want to without any problem 😃
License
This project is licensed under the MIT License.
See the LICENSE
file in the root of this repository.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.1 is compatible. |
This package has no dependencies.