You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Dec 4, 2023. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+27-1Lines changed: 27 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additio
31
31
32
32
This project uses linting rules to enforce code standardization. These rules are specified in the file [bot-checkstyle.xml](./etc/bot-checkstyle.xml) with [CheckStyle](https://checkstyle.org/) and are hooked to Maven's build cycle.
33
33
34
-
**INFO**: Since the CheckStyle plugin is hook to the build cycle, this makes the build **fail** in case there are linting warnings in the project files so be sure to check that the code doesn't break any rule.
34
+
**INFO**: Since the CheckStyle and PMD plugins are hooked into the build cycle, this makes the build **fail** in cases where there are linting warnings in the project files. Errors will be in the file ./target/checkstyle-result.xml and ./target/pmd.xml.
35
35
36
36
CheckStyle is available in different flavours:
37
37
-[Visual Studio Code plugin](https://marketplace.visualstudio.com/items?itemName=shengchen.vscode-checkstyle)
@@ -41,6 +41,32 @@ CheckStyle is available in different flavours:
41
41
42
42
**INFO**: Be sure to configure your IDE to use the file [bot-checkstyle.xml](./etc/bot-checkstyle.xml) instead of the default rules.
43
43
44
+
## Build and IDE
45
+
46
+
Any IDE that can import and work with Maven projects should work. As a matter of practice we use the command line to perform Maven builds. If your IDE can be configured to defer build and run to Maven it should also work.
47
+
- Java
48
+
- We use the [Azul JDK 8](https://www.azul.com/downloads/azure-only/zulu/?version=java-8-lts&architecture=x86-64-bit&package=jdk) to build and test with. While not a requirement to develop the SDK with, it is recommended as this is what Azure is using for Java 1.8. If you do install this JDK, make sure your IDE is targeting that JVM, and your path (from command line) and JAVA_HOME point to that.
49
+
50
+
- Visual Studio Code
51
+
- Extensions
52
+
- Java Extension Pack by Microsoft
53
+
- Checkstyle for Java by ShengChen (Optional)
54
+
- EditorConfig for VS Code by EditorConfig (Recommended)
55
+
- Recommended setup
56
+
- Open the settings for "Language Support for Java by RedHat" and set:
57
+
- Java > Format > Settings: Profile = "BotFramework"
58
+
- Java > Format > Settings: Url = "etc/botframework-java-formatter.xml"
59
+
- This will format the code (on command) to BotFramework style.
60
+
61
+
- IntelliJ
62
+
- Extensions
63
+
- Checkstyle by IDEA
64
+
- Eclipse Code Formatter by Vojtech-Krasa (Recommended)
65
+
- Recommended setup
66
+
- When importing the SDK for the first time, make sure "Auto import" is checked.
67
+
- If the Eclipse Code Formatter was installed:
68
+
- Got to Settings > Other Settings -> Eclipse Code Formatter, and set the formatter config file to etc/botframework-java-formatter.xml
69
+
44
70
## Reporting Security Issues
45
71
46
72
Security issues and bugs should be reported privately, via email, to the Microsoft Security
0 commit comments