Skip to content

Commit 788e5ca

Browse files
committed
add java quickstart
1 parent cee068e commit 788e5ca

File tree

1 file changed

+95
-2
lines changed

1 file changed

+95
-2
lines changed

fern/products/sdks/overview/java/quickstart.mdx

Lines changed: 95 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,99 @@ title: Java Quickstart
33
description: Get started quickly with the Fern Java SDK.
44
---
55

6-
# Java Quickstart
6+
<Markdown src="/products/sdks/snippets/demo-warning.mdx"/>
77

8-
Follow these steps to quickly get up and running with the Fern Java SDK.
8+
Generate a Java SDK by following the instructions on this page.
9+
10+
<Steps>
11+
<Markdown src="/products/sdks/snippets/install-cli.mdx"/>
12+
13+
### Initialize the Fern Folder
14+
15+
You can use either the OpenAPI definition, AsyncAPI definition, or Fern
16+
Definition to generate your SDK.
17+
18+
<AccordionGroup>
19+
<Markdown src="/products/sdks/snippets/option-1-openapi.mdx"/>
20+
21+
<Markdown src="/products/sdks/snippets/option-2-asyncapi.mdx"/>
22+
23+
<Accordion title="Option 3: Fern Definition">
24+
25+
<Markdown src="/products/sdks/snippets/option-3-fern-def.mdx"/>
26+
27+
2. Add the config option `outputSourceFiles: true` to
28+
`generators.yml`. This ensures your SDK contains source files in
29+
your preferred SDK language instead of compiled output.
30+
31+
```yaml {11-12}
32+
# yaml-language-server: $schema=https://schema.buildwithfern.dev/generators-yml.json
33+
default-group: local
34+
groups:
35+
local:
36+
generators:
37+
- name: fernapi/fern-typescript-node-sdk
38+
output:
39+
location: local-file-system
40+
path: ../sdks/typescript
41+
version: <Markdown src="/snippets/version-number.mdx"/>
42+
config:
43+
outputSourceFiles: true
44+
```
45+
46+
<Note>`fern init` creates a default configuration that includes the
47+
TypeScript Node SDK generator. The `local` group containing this
48+
generator only generates if you run fern generate without specifying a
49+
group, or if you explicitly target it with `fern generate --group
50+
local`. In subsequent steps, you'll add an additional generator for your
51+
preferred SDK language.</Note>
52+
</Accordion>
53+
54+
</AccordionGroup>
55+
56+
<Markdown src="/products/sdks/snippets/pass-fern-check.mdx"/>
57+
58+
### Add the SDK generator
59+
60+
1. Add the Java SDK generator:
61+
62+
```bash
63+
fern add fern-java-sdk --group sdk
64+
```
65+
66+
This command adds the following to `generators.yml`:
67+
68+
```yaml
69+
sdk:
70+
generators:
71+
- name: fernapi/fern-java-sdk
72+
version: <Markdown src="/snippets/version-number.mdx"/>
73+
```
74+
75+
1. Manually add the following to your `sdk` group:
76+
77+
```yaml {5-7}
78+
sdk:
79+
generators:
80+
- name: fernapi/fern-python-sdk
81+
version: <Markdown src="/snippets/version-number.mdx"/>
82+
output:
83+
location: local-file-system
84+
path: ../sdks/java
85+
```
86+
1. Run `fern check` again to verify that your syntax is correct.
87+
88+
<Markdown src="/products/sdks/snippets/generate-sdk.mdx"/>
89+
90+
```bash
91+
fern/ # created in step 1
92+
sdks/ # created by fern generate --group sdk
93+
├─ java
94+
├─ YourOrganizationApiClient.java
95+
├─ core/
96+
└─ resources/
97+
└─ imdb/
98+
├─ errors/
99+
└─ types/
100+
```
101+
</Steps>

0 commit comments

Comments
 (0)