> For the complete documentation index, see [llms.txt](https://docs.sealights.io/knowledgebase/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sealights.io/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/java-build-tools-plugins/sealights-gradle-plugin-1/advanced-features.md).

# Advanced Configuration

## Custom JVM Parameters

You can pass custom JVM parameters to the SeaLights instrumentation processes.

These parameters are useful when you need to:

* configure network settings
* add JVM system properties
* enable debugging
* tune memory usage

#### Example

```scala
sealightsJvmParams := Seq("-Dkey=value")
```

This configuration adds JVM parameters to the SeaLights instrumentation process.

## Test Listener JVM Parameters

You can also pass JVM parameters specifically to the Test Listener, which runs during test execution.

#### Example

```scala
sealightsTestListenerJvmParams := Seq("-Dkey=value")
```

This is useful when you need to configure JVM settings that affect test execution reporting or connectivity.

## Multiple Test Stages

SeaLights supports reporting results from multiple test stages within the same build.

For example:

* Unit Tests
* Integration Tests
* Functional Tests

You can map SBT test tasks to specific SeaLights test stages.

#### Example

```scala
testTasksAndStages := Map(
  "test" -> "Unit Tests",
  "integrationTest" -> "Integration Tests"
)
```

This allows SeaLights to group test results by stage in the SeaLights dashboard.

## Temporarily Disable SeaLights

You can temporarily disable SeaLights instrumentation without removing the configuration.

#### Option 1 — Using SBT Configuration

```scala
sealightsDisabled := Some(true)
```

#### Option 2 — Using JVM Property

```bash
-DsealightsDisabled=true
```

This can be useful when:

* troubleshooting build issues
* running local tests without instrumentation
* temporarily bypassing SeaLights in CI

## Revert SeaLights Changes

If you want to remove the SeaLights integration changes from your project, you can restore the original SBT configuration.

#### Example

```bash
java -jar sl-build-scanner.jar -restoreSbt -workspacepath /path/to/project
```

This command restores the project files modified by the SeaLights Build Scanner.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.sealights.io/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/java-build-tools-plugins/sealights-gradle-plugin-1/advanced-features.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
