riju/langs/java.yaml

136 lines
3.7 KiB
YAML

id: "java"
aliases:
- "javac"
name: "Java"
monacoLang: java
install:
apt:
- default-jdk
- clang-format
manual: |
install -d "${pkg}/opt/jdt"
wget https://download.eclipse.org/jdtls/snapshots/jdt-language-server-latest.tar.gz
tar -xf jdt-language-server-latest.tar.gz -C "${pkg}/opt/jdt"
main: "src/Main.java"
template: |
public class Main {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
compile: |
javac src/Main.java
run: |
java -cp src Main
format:
run: |
clang-format --style="{BasedOnStyle: llvm, IndentWidth: 4}" --assume-filename=Format.java
input: |
public class Main
{
public static void main(String[] args)
{
System.out.println("Hello, world!");
}
}
lsp:
setup: |
rm -rf "$HOME/jdt-config" && cp -RT /opt/jdt/config_linux "$HOME/jdt-config"
start: |
java -Declipse.application=org.eclipse.jdt.ls.core.id1 -Dosgi.bundles.defaultStartLevel=4 -Declipse.product=org.eclipse.jdt.ls.core.product -Dlog.level=ALL -noverify -Xmx1G -jar /opt/jdt/plugins/org.eclipse.equinox.launcher_*.jar -configuration "$HOME/jdt-config" -data "$HOME/jdt-data" --add-modules=ALL-SYSTEM --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED
init:
settings:
java:
autobuild:
enabled: true
codeGeneration:
generateComments: false
hashCodeEquals:
useInstanceof: false
useJava7Objects: false
toString:
codeStyle: STRING_CONCATENATION
limitElements: 0
listArrayContents: true
skipNullValues: false
template: ${object.className} [${member.name()}=${member.value}, ${otherMembers}]
useBlocks: false
completion:
enabled: true
favoriteStaticMembers:
- org.junit.Assert.*
- org.junit.Assume.*
- org.junit.jupiter.api.Assertions.*
- org.junit.jupiter.api.Assumptions.*
- org.junit.jupiter.api.DynamicContainer.*
- org.junit.jupiter.api.DynamicTest.*
- org.mockito.Mockito.*
- org.mockito.ArgumentMatchers.*
- org.mockito.Answers.*
filteredTypes:
- java.awt.*
- com.sun.*
guessMethodArguments: true
importOrder:
- java
- javax
- com
- org
overwrite: true
configuration:
checkProjectSettingsExclusions: true
updateBuildConfiguration: automatic
dependency:
packagePresentation: flat
errors:
incompleteClasspath:
severity: warning
foldingRange:
enabled: true
format:
comments:
enabled: true
enabled: true
onType:
enabled: true
implementationsCodeLens:
enabled: false
import:
exclusions:
- '**/node_modules/**'
- '**/.metadata/**'
- '**/archetype-resources/**'
- '**/META-INF/maven/**'
gradle:
enabled: false
wrapper:
enabled: false
maven:
enabled: false
maven:
downloadSources: false
maxConcurrentBuilds: 1
progressReports:
enabled: false
referencesCodeLens:
enabled: false
saveActions:
organizeImports: false
selection:
enabled: true
signatureHelp:
enabled: true
trace:
server: "off"
code: "TODO"
item: "TODO"
skip:
- lsp