# Erros de compilação (APIs removidas/renomeadas 2026)

> cannot find symbol / package does not exist — a tabela de conserto legado → atual.

Source: https://crossfly.dev/pt/docs/troubleshooting/compilation — CrossFly documentation. Full docs as one file: https://crossfly.dev/llms-full.txt

# Erros de compilação (modernização 2026)

O grupo mais comum após a modernização 2026: **`cannot find symbol`** / **`package does not exist`**
por uso de API **removida ou renomeada**. Formato: **sintoma → causa → correção**.

## Tabela de conserto: legado → atual
| Não compila (legado) | Correção (atual) |
|---|---|
| `Settings` (config/estado) | `Device` / `DeviceConfig` / `LocaleFormats` / `Screen` |
| `Settings.appSettings` / `appSecretKey` | SQLite ou arquivos em `Device.homeFolder` |
| `Toast` / `ToolTip` | `Hint` |
| `Chart` / `Series` / `LineChart` / `PieChart` / `Velocimeter` | `ChartView` (+ `ChartType`) |
| `Rect` | `Rectangle` |
| `ScrollPosition` | `ScrollIndicator` |
| classe `Color` / `ColorWheel` | constantes em `UIConstants` + `ColorUtils` |
| classe `Transition` | enum aninhado `UIConstants.Transition` |
| `DefaultValues` | `DeviceConfig` |
| `import dev.crossfly.sql.*` (JDBC: `Connection`/`Statement`/`ResultSet`) | `import dev.crossfly.sqlite.*` (`SqliteDb`/`SqliteStmt`/`SqliteCursor`) |
| Bluetooth JSR-82 (`DiscoveryAgent`/`RemoteDevice`) | BLE/GATT (`BluetoothManager`…) |
| pacote `phone` | `device` |
| pacote `anim` / `item` | `animation` / `listitem` |

## Removidos sem substituto direto
`Grid`, `Tree`/`Node`/`TreeModel`, `TopMenu`, `Accordion`, `Spacer`, `Velocimeter`, **PDF**, **ESC/POS**,
**Barcode** (agora via câmera), **impressoras**. Se seu código usa uma dessas, será preciso rearquitetar
(ex.: `Grid` → `GridLayout`; `Spacer` → `Gap`/frações; barcode → `CameraBarcode`/`BarcodePicker`).

## Exemplo de conserto de import
```java
// antes (não compila)
import dev.crossfly.sql.*;      // JDBC removido
new Toast("Salvo");            // Toast removido

// depois
import dev.crossfly.sqlite.*;   // API nativa
Hint.show("Salvo", 2000);            // Hint
```

## Veja também
- Guia por origem: [Vindo do TotalCross](/docs/migrate/from-totalcross) · Renomeações: [Glossário (reference)](/docs/reference/glossary)
