새 Java 클래스 생성
- 최종 업데이트2022/05/19
새 Java 클래스 생성
IntelliJ를 사용하여 새 Java 클래스와 새 디렉터리를 생성하고 다른 빌드 파일을 구성합니다.
전제 조건
다음 태스크에 나열된 단계를 완료합니다. 빌드 파일 구성.
프로시저
-
새 Java 클래스를 만들고 com.automationanywhere.botcommand 패키지를 마우스 오른쪽 버튼으로 클릭한 다음 새로 만들기 > Java 클래스를 선택합니다. 새 클래스 GetFileDetails의 이름을 입력합니다.
-
Concatenate. java에서
@BotCommand
를 복사하고 새 GetFileDetails.java 파일에 붙여넣습니다.import static com.automationanywhere.commandsdk.model.DataType.STRING; //BotCommand makes a class eligible for being considered as an action. @BotCommand //CommandPks adds required information to be dispalable on GUI. @CommandPkg( //Unique name inside a package and label to display. name = "concatenate", label = "[[Concatenate.label]]", node_label = "[[Concatenate.node_label]]", description = "[[Concatenate.description]]", icon = "pkg.svg", //Return type information. return_type ensures only the right kind of variable is provided on the UI. return_label = "[[Concatenate.return_label]]", return_type = STRING, return_required = true) public class Concatenate { //Messages read from full qualified property file name and provide i18n capability. private static final Messages MESSAGES = MessagesFactory .getMessages("com.automationanywhere.botcommand.samples.messages"); //Identify the entry point for the action. Returns a Value<String> because the return type is String. @Execute public Value<String> action( //Idx 1 would be displayed first, with a text box for entering the value. @Idx(index = "1", type = TEXT) //UI labels. @Pkg(label = "[[Concatenate.firstString.label]]") //Ensure that a validation error is thrown when the value is null. @NotEmpty String firstString, @Idx(index = "2", type = TEXT) @Pkg(label = "[[Concatenate.secondString.label]]") @NotEmpty String secondString) { //Internal validation, to disallow empty strings. No null check needed as we have NotEmpty on firstString. if ("".equals(firstString.trim())) throw new BotCommandException(MESSAGES.getString("emptyInputString", "firstString")); if ("".equals(secondString.trim())) throw new BotCommandException(MESSAGES.getString("emptyInputString", "secondString")); //Business logic String result = firstString + secondString; //Return StringValue. return new StringValue(result);
-
다음과 같은 @CommandPkg 매개변수를 업데이트합니다.
name
,label
,node_label
,description
및icon
. -
return_label
및return_type
을 업데이트합니다. -
NumberValue
작업, 내부 유효성 검사, 비즈니스 로직 및 반환 값을 추가합니다. - Concatenated. java 파일과 samples.commands. basic 디렉터리, sample.commands 디렉터리를 삭제합니다.
-
Concatenate. java에서
-
en_US.json 파일 구성: go to src > main > resources > locales > en_US.json으로 이동하고 라벨 및 설명 값 뒤에 다음 필드를 추가하고, 파일에서 다른 매개변수를 삭제합니다.
{ "label": "File Details", "description": "Returns basic file details", "GetFileDetails.label": "File Size", "GetFileDetails.description": "Return the size of the selected file in bytes", "GetFileDetails.node_label": "File Size in Bytes", "GetFileDetails.return_label": "File Size", "GetFileDetails.return_label_description": "Return in bytes", "GetFileDetails.filePath.label": "Select a File for analysis" }
- 패키지 삭제: src > main > java > com.automationanyhwere.botcommand로 이동하고, samples.commands를 삭제하고 samples 패키지를 삭제합니다.
-
Github에서 새 아이콘을 가져오고 CommandPkg 주석을 업데이트합니다.
- Bot 흐름에서 사용하려는 아이콘을 다운로드하고 .svg 파일로 저장합니다.
- 이미지 파일을 src > main > resources > icons 폴더로 복사합니다.
-
새 디렉터리 생성: src로 이동하고, 마우스 오른쪽 버튼을 클릭하고 새로 만들기 > 디렉터리를 선택합니다.
-
이름 필드에 test\java을 입력합니다. 또는
test\java
를 선택하고, 이름을 TestFileSize로 입력합니다. - TestFileSize java 클래스에서 테스트 주석을 구성합니다.
-
@test
퍼블릭 클래스를 생성하고,GetFileDetails
객체를 생성하고, 작업을 호출합니다. - 옵션: IntelliJ에서 TestGetFileDetails를 실행하여 테스트합니다.
-
이름 필드에 test\java을 입력합니다. 또는
-
TestFileSize 파일을 구성하고, TestFileSize를 열고 다음 코드를 복사한 다음 붙여넣습니다.
{ @Test public void TestGetFileDetails() { String filePath = "src\\main\\resources\\icons\\sample.svg"; //Create GetFileDetails Object GetFileDetails getFileDetails = new GetFileDetails(); //invoke action NumberValue output = getFileDetails.action(filePath); Assert.assertEquals(output.getAsDouble(), 5027.0); }
- 프로젝트 저장: 파일 > 모두 저장.
- 모든 Gradle 프로젝트 다시 로드를 클릭하고, Gradle 태스크 실행을 클릭한 다음 A2019FileDetails 프로젝트가 선택되어 있는지 확인합니다.
-
무엇이든 실행 창에서 gradle clean build shadowJar를 입력합니다.
실행 후 다음 메시지가 표시됩니다. BUILD SUCCESSFUL in 8s <number of seconds>