48 lines
1.6 KiB
Markdown
48 lines
1.6 KiB
Markdown
# `.nx` and the Nx Wrapper
|
|
|
|
Nx is able to manage its own installation via the `.nx` directory. This installation is described within [nx.json](/reference/nx-json#installation).
|
|
|
|
By allowing Nx to manage its installation, a given repository is no longer required to contain a package.json or node_modules in its root. This is useful for repositories which may not contain any javascript or typescript. Additionally, since the Nx installation is managed inside `.nx`, it is easier to separate out from your other dependencies.
|
|
|
|
## Usage
|
|
|
|
You can install Nx in the `.nx/installation` directory by running `nx init` in a directory without package.json, and picking to install Nx in the current directory.
|
|
|
|
When Nx is installed in `.nx`, you can run Nx via a global Nx installation or the nx and nx.bat scripts that were created. In either case, the wrapper (.nx/nxw.js) will be invoked and ensure that the current workspace is up to date prior to invoking Nx.
|
|
|
|
{% tabs %}
|
|
{% tab label="Global Install" %}
|
|
|
|
```shell
|
|
> nx build my-project
|
|
> nx generate application
|
|
> nx graph
|
|
```
|
|
|
|
{% /tab %}
|
|
{% tab label="nx shell script" %}
|
|
|
|
```shell
|
|
> ./nx build my-project
|
|
> ./nx generate application
|
|
> ./nx graph
|
|
```
|
|
|
|
{% /tab %}
|
|
{% tab label="nx.bat" %}
|
|
|
|
```shell
|
|
> ./nx.bat build my-project
|
|
> ./nx.bat generate application
|
|
> ./nx.bat graph
|
|
```
|
|
|
|
{% /tab %}
|
|
{% /tabs %}
|
|
|
|
{% callout type="note" title="Available since Nx v15.8.7" %}
|
|
|
|
Support for `--use-dot-nx-installation` was added in Nx v15.8.7. To ensure that it is available, specify the version of nx when running your command so that `npx` doesn't accept an older version that is in the cache. (e.g. `npx nx@latest init`)
|
|
|
|
{% /callout %}
|