# io.github.libtmux.Environment.Environment.effective

- **Module:** io.github.libtmux.Environment.Environment
- **Package:** io.github.libtmux:libtmux
- **Language:** Java
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-java/blob/842228310449e879ebcaa3f910597757c9dbffd6/libtmux/src/main/java/io/github/libtmux/Environment.java#L114
- **Page:** https://libtmux.org/en/java/latest/reference/io-github-libtmux-environment-environment-effective/

```
io.github.libtmux.Environment.Environment.effective() -> Map<String, String>
```

What a process started from this scope is actually handed, both scopes taken together.

{@link #all} answers for one scope, which is what a caller writing to it needs and not what
a pane opened later will see: tmux gives a new process the server's environment with the
session's laid over it, minus whatever the session marked as not to be inherited. At the
server scope the two are the same thing.

The counterpart to {@link Options#effective()}, and named after it.

## Raises

- `ServerNotRunningException`: if no daemon is running
- `LibTmuxException`: if a read otherwise fails
