feat(run): abre o Java da placa real e guarda dados no clone
Linux, WSL e Windows usam o mesmo run --all, e plugins, cache e logs ficam em .pitiupi na raiz do projeto. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
1 parent
22540eaffb
commit
e84aba2f4e
15 files changed
+328
-68
No files matched your search
@@ -24,12 +24,32 @@ Execute duas instâncias com **portas diferentes** (ex.: 5000 e 5001). Mesmo nom
|
||||
- Bloqueio de multicast em redes de visitantes ou isolamento AP→AP impede descoberta.
|
||||
- Em laboratório, preferir cabo ou Wi‑Fi com multicast habilitado.
|
||||
|
||||
## WSL2
|
||||
## Onde o processo Java roda
|
||||
|
||||
Executar o Pitiupi no WSL e peers no Windows (ou vice-versa) pode falhar em multicast. Preferir:
|
||||
A aba **Configurações** só lista interfaces que **este** processo enxerga. O nome decide a família: `eth`, `eno`, `enp`, `ens` ou “Ethernet” é **Cabo**; `wlan`, `wlp` ou “Wi-Fi” é **Wi-Fi**. O clone Git pode ficar no disco do WSL ou numa pasta do Windows. O que muda a lista é qual `java` abre o JAR.
|
||||
|
||||
- todos os peers no mesmo ambiente (Linux nativo ou VMs), ou
|
||||
- dois PCs físicos na mesma sub-rede.
|
||||
| Processo | O que a saída mostra |
|
||||
| --- | --- |
|
||||
| `java.exe` do Windows | Placas reais. Sem cabo com IPv4, **Cabo** não é oferecido. **Wi-Fi** aparece quando a placa sem fio está ligada. |
|
||||
| Ubuntu instalado no PC (não é WSL) | `wlan*` e `eth*`/`enp*` reais. O mesmo `./scripts/pitiupi.sh run --all` abre o Java do Linux. |
|
||||
| Java de dentro do WSL | Em geral uma interface virtual `eth0` ou `eth1`. O programa classifica isso como **Cabo**, mesmo com o cabo físico desconectado e o Windows no Wi-Fi. Não existe `wlan` nesse Linux, então a saída **Wi-Fi** não aparece. |
|
||||
|
||||
Dois arranjos de WSL, e nenhum dos dois substitui o Java do Windows na sala:
|
||||
|
||||
- **NAT** (IP `172.x` no `ip -4 addr`): o Linux não está na rede dos colegas. Quem está em `192.168.x` ou `169.254.x` não recebe o multicast. Aumentar o TTL não coloca esse processo na LAN.
|
||||
- **Rede espelhada** (o `eth*` mostra o mesmo IPv4 do Wi-Fi do Windows, por exemplo `192.168.3.x`): o rótulo **Cabo** segue o nome Linux, não o cabo da tomada. O socket ainda é o da interface virtual. A descoberta não é a mesma de um colega que abriu o Java no Windows.
|
||||
|
||||
Não dá para o código “pegar a placa Wi-Fi do Windows” a partir do WSL: essa placa não está no espaço de rede do Linux. Tratar todo `eth*` como Wi-Fi quebraria o Ubuntu nativo, em que `eth` é cabo de verdade. Por isso a sala usa o mesmo tipo de processo nos dois lados: os dois no Java do Windows, ou os dois no Ubuntu instalado na máquina. Não misture um Pitiupi aberto no WSL com outro aberto no Windows.
|
||||
|
||||
O passo a passo de cada máquina está no [quickstart](00_quickstart.md).
|
||||
|
||||
| Onde a pessoa está | O que abrir | Comando, na pasta do projeto |
|
||||
| --- | --- | --- |
|
||||
| Linux (Ubuntu na máquina) | Terminal | `./scripts/pitiupi.sh run --all` — Java do Linux |
|
||||
| Windows | Prompt de Comando (`cmd`) | `scripts\pitiupi.cmd run --all` — Java do Windows |
|
||||
| WSL | Terminal do Ubuntu | `./scripts/pitiupi.sh run --all` — a janela abre no Java do Windows |
|
||||
|
||||
No PowerShell o comando é o mesmo do cmd. Plugins, cache e logs ficam em `.pitiupi/` na pasta do projeto. JDK 17 do Windows, se faltar: `winget install Microsoft.OpenJDK.17`. No Windows o Ant também precisa estar no PATH.
|
||||
|
||||
## Escolha de interface (multicast)
|
||||
|
||||
|
||||
Reference in new issue
Block a user