Skip to content

Commit b3fbc02

Browse files
author
Anthony Hillairet
authored
Add troubleshooting in local development (#2344)
1 parent 1463ed8 commit b3fbc02

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

docs/architecture/airbyte-specification.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
## Key Takeaways
44

55
* The specification is Docker-based; this allows a developer to write a connector in any language they want. All they have to do is put that code in a Docker container that adheres to the interface and protocol described below.
6-
* We currently provide templates to make this even easier for those who prefer to work in python or java. These templates allow the developer skip any Docker setup so that they can just implement code against well-defined interfaces in their language of choice.
6+
* We currently provide templates to make this even easier for those who prefer to work in python or java. These templates allow the developer to skip any Docker setup so that they can just implement code against well-defined interfaces in their language of choice.
77
* The specification is designed to work as a CLI. The Airbyte app is built on top of this CLI.
88
* The specification defines a standard interface for implementing data integrations: Sources and Destinations.
99
* The specification provides a structured stdout / stdin message passing standard for data transport.
@@ -217,7 +217,7 @@ For the sake of brevity, we will not re-describe `spec` and `check`. They are ex
217217

218218
* All messages passed to and from connectors must be wrapped in an `AirbyteMesage` envelope and serialized as JSON. The JsonSchema specification for these messages can be found [here](https://github.com/airbytehq/airbyte/blob/master/airbyte-protocol/models/src/main/resources/airbyte_protocol/airbyte_protocol.yaml).
219219
* Even if a record is wrapped in an `AirbyteMessage` it will only be processed if it appropriate for the given command. e.g. If a source `read` action includes AirbyteMessages in its stream of type Catalog for instance, these messages will be ignored as the `read` interface only expects `AirbyteRecordMessage`s and `AirbyteStateMessage`s. The appropriate `AirbyteMessage` types have been described in each command above.
220-
* **ALL** actions are allowed to return `AirbyteLogMessage`s on stdout. For brevity, we have not mentioned these log messages in the description of each action, but they are always allowed. An `AirbyteLogMessage` wraps any useful logging that the connector wants to provide. These logs will written to Airbyte's log files and output to the console.
220+
* **ALL** actions are allowed to return `AirbyteLogMessage`s on stdout. For brevity, we have not mentioned these log messages in the description of each action, but they are always allowed. An `AirbyteLogMessage` wraps any useful logging that the connector wants to provide. These logs will be written to Airbyte's log files and output to the console.
221221
* I/O:
222222
* Connectors receive arguments on the command line via JSON files. `e.g. --catalog catalog.json`
223223
* They read `AirbyteMessage`s from stdin. The destination `write` action is the only command that consumes `AirbyteMessage`s.

docs/contributing-to-airbyte/developing-locally.md

+11
Original file line numberDiff line numberDiff line change
@@ -184,3 +184,14 @@ Sometimes you'll want to reset the data in your local environment. One common ca
184184
docker-compose --env-file .env.dev -f docker-compose.yaml -f docker-compose.dev.yaml up -V
185185
```
186186

187+
## Troubleshooting
188+
189+
### `gradlew Could not target platform: 'Java SE 14' using tool chain: 'JDK 8 (1.8)'.`
190+
191+
Somehow gradle didn't pick up the right java version for some reason.
192+
Find the install version and set the `JAVA_HOME` environment to point to the JDK folder.
193+
194+
For example:
195+
```
196+
env JAVA_HOME=/usr/lib/jvm/java-15-openjdk ./gradlew :airbyte-integrations:connectors:your-connector-dir:build
197+
```

0 commit comments

Comments
 (0)