diff --git a/.github/workflows/javadoc.yaml b/.github/workflows/javadoc.yaml
new file mode 100644
index 00000000000..4cac22db67f
--- /dev/null
+++ b/.github/workflows/javadoc.yaml
@@ -0,0 +1,48 @@
+name: Deploy Javadoc
+# in folder apidocs/
+
+on:
+ # Allows you to run this workflow manually from the Actions tab
+ workflow_dispatch:
+
+# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
+permissions:
+ contents: read
+ pages: write
+ id-token: write
+
+# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
+# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
+concurrency:
+ group: "pages"
+ cancel-in-progress: false
+
+jobs:
+ build-and-deploy:
+ runs-on: ubuntu-latest
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+ steps:
+ - name: Check Out Source Code
+ uses: actions/checkout@v2
+
+ - name: Set up JDK 8
+ uses: actions/setup-java@v2
+ with:
+ java-version: '8'
+ distribution: 'adopt'
+
+ - name: Generate Javadoc
+ run: mvn javadoc:aggregate -DskipTests -pl '!langchain4j-opensearch,!code-execution-engines/langchain4j-code-execution-engine-graalvm-polyglot,!langchain4j-neo4j'
+
+ - name: Setup Pages
+ uses: actions/configure-pages@v3
+ - name: Upload artifact
+ uses: actions/upload-pages-artifact@v2
+ with:
+ # Upload site folder
+ path: './target/site/.'
+ - name: Deploy to GitHub Pages
+ id: deployment
+ uses: actions/deploy-pages@v2
diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js
index 0170b341ee3..2646974c6df 100644
--- a/docs/docusaurus.config.js
+++ b/docs/docusaurus.config.js
@@ -86,7 +86,7 @@ const config = {
},
{to: '/docs/tutorials', label: 'Tutorials', position: 'left'},
{to: '/docs/category/integrations', label: 'Integrations', position: 'left'},
- {to: 'https://langchain4j.dev/javadoc/', label: 'Javadoc', position: 'left'},
+ {to: 'https://lizeraes.github.io/langchain4j/apidocs/', label: 'Javadoc', position: 'left'},
{to: '/blog', label: 'Blog', position: 'left'},
{
href: 'https://github.com/langchain4j/langchain4j',
diff --git a/pom.xml b/pom.xml
index 7e05f6aff22..9b85e5677ae 100644
--- a/pom.xml
+++ b/pom.xml
@@ -57,4 +57,55 @@
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+
+ attach-javadocs
+
+ jar
+
+
+
+ aggregate
+
+ aggregate
+
+ site
+
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.5.0
+
+
+ aggregate
+ false
+
+ aggregate
+
+
+
+ default
+
+ javadoc
+
+
+
+
+
+
+
+