1.8. Camel REST DSL OpenApi Maven Plugin


Camel REST DSL OpenApi Maven 플러그인은 다음과 같은 목표를 지원합니다.

  • Camel-restdsl-openapi:generate - OpenApi 사양에서 소비자 REST DSL RouteBuilder 소스 코드 생성
  • Camel-restdsl-openapi:generate-with-dto - OpenApi 사양 및 DTO 모델 클래스에서 swagger-codegen-maven-plugin을 통해 생성된 소비자 REST DSL RouteBuilder 소스 코드를 생성합니다.
  • Camel-restdsl-openapi:generate-xml - OpenApi 사양에서 소비자 REST DSL XML 소스 코드 생성
  • Camel-restdsl-openapi:generate-xml-with-dto - OpenApi 사양 및 DTO 모델 클래스에서 swagger-codegen-maven-plugin을 통해 생성된 소비자 REST DSL XML 소스 코드를 생성합니다.
  • Camel-restdsl-openapi:generate-yaml - OpenApi 사양에서 소비자 REST DSL YAML 소스 코드 생성
  • Camel-restdsl-openapi:generate-yaml-with-dto - OpenApi 사양 및 DTO 모델 클래스에서 swagger-codegen-maven-plugin을 통해 생성된 소비자 REST DSL YAML 소스 코드를 생성합니다.

1.8.1. Maven pom.xml에 플러그인 추가

이 플러그인은 Maven pom.xml 파일에 plugins 섹션에 추가하여 추가할 수 있습니다(예: Spring Boot 애플리케이션).

<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>

    <plugin>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-restdsl-openapi-plugin</artifactId>
      <version>{CamelCommunityVersion}</version>
    </plugin>

  </plugins>
</build>
Copy to Clipboard Toggle word wrap

그런 다음 아래와 같이 접두사 camel-restdsl-openapi 를 사용하여 플러그인을 실행할 수 있습니다.

$mvn camel-restdsl-openapi:generate
Copy to Clipboard Toggle word wrap

1.8.2. camel-restdsl-openapi:generate

Camel REST DSL OpenApi Maven 플러그인의 목표는 Maven에서 REST DSL RouteBuilder 구현 소스 코드를 생성하는 데 사용됩니다.

1.8.3. 옵션

플러그인은 명령줄( -D 구문 사용)에서 구성하거나 구성 태그의 pom.xml 파일에 정의할 수 있는 다음 옵션을 지원합니다.

Expand
매개변수기본값설명

skip

false

코드 생성을 건너뛰려면 true 로 설정

filterOperation

 

지정된 작업 ID만 포함합니다. 여러 ID는 쉼표로 구분할 수 있습니다. 와일드카드를 사용할 수 있습니다. eg find* to include all operations starting with find.

specificationUri

src/spec/openapi.json

OpenApi 사양의 URI는 기본적으로 프로젝트 디렉터리 내에서 파일 시스템 경로, HTTP 및 classpath 리소스를 지원합니다. JSON 및 YAML을 지원합니다.

auth

 

OpenApi 사양 정의를 원격으로 가져올 때 권한 부여 헤더를 추가합니다. name:header의 URL 인코딩 문자열을 쉼표로 구분하여 여러 값을 구분합니다.

className

제목 또는 RestDslRoute

생성된 클래스의 이름, OpenApi 사양 제목에서 가져오거나 기본적으로 RestDslRoute 로 설정합니다.

packageName

host 또는 rest.dsl.generated

OpenApi 사양 호스트 값 또는 rest.dsl.generated 에서 가져온 생성된 클래스의 패키지 이름입니다.

indent

" "

사용할 문자 들여 쓰기 문자 4개는 기본적으로 \t 를 사용하여 탭 문자를 서명할 수 있습니다.

outputDirectory

generated-sources/restdsl-openapi

생성된 소스 파일을 프로젝트 디렉터리에 기본적으로 generate -sources/restdsl-openapi 로 배치하는 위치

destinationGenerator

 

대상 끝점 사용자 지정을 위해 org.apache.camel.generator.openapi.DestinationGenerator 인터페이스를 구현하는 클래스의 정규화된 클래스 이름입니다.

destinationToSyntax

direct:${operationId}

직접 구성 요소를 사용하는 의 기본 구문입니다.

restConfiguration

true

감지된 나머지 구성 요소가 있는 나머지 구성의 생성을 포함할지 여부입니다.

apiContextPath

 

restConfiguration 이 true로 설정된 경우 openapi 끝점 경로를 정의합니다.

clientRequestValidation

false

요청 유효성 검사를 활성화할지 여부입니다.

basePath

 

OpenAPI 사양에 정의된 api 기본 경로를 덮어씁니다.

requestMappingValues

/**

사용자 정의 RequestMapping 매핑 값을 생성할 수 있습니다. 다음과 같이 여러 매핑 값을 전달할 수 있습니다.

<requestMappingValues> <param>/my-api-path/ </param> <param>/my-other-path/ </param> </param> </requestMappingValues>

1.8.4. Servlet 구성 요소가 포함된 Spring Boot 프로젝트

Maven 프로젝트가 Spring Boot 프로젝트이고 restConfiguration 이 활성화되어 있고 서블릿 구성 요소가 REST 구성 요소로 사용되는 경우 이 플러그인은 @SpringBootApplication 메인 클래스가 있고 필요한 CamelRestController 지원 클래스를 생성하기 위해 패키지 이름(패키지Name이 명시적으로 구성되지 않은 경우) 패키지 이름을 자동으로 감지합니다.

1.8.5. camel-restdsl-openapi:generate-with-dto

생성 대상으로 작동하지만 OpenApi 사양에서 DTO 모델 클래스의 java 소스 코드를 생성하기 위해 swagger-codegen-maven-plugin을 자동으로 실행하여 DTO 모델 클래스를 생성합니다.

이 플러그인은 모델 DTO를 생성하기 위해 swagger-codegen-maven-plugin을 사용하기 위한 적절한 기본값 집합만 지원하도록 제한되었습니다. 더 많은 기능과 유연성이 필요한 경우 Swagger Codegen Maven 플러그인 을 직접 사용하여 이 플러그인이 아닌 DTO를 생성합니다.

DTO 클래스에는 다음과 같은 추가 종속 항목이 필요할 수 있습니다.

    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.10.1</version>
    </dependency>
    <dependency>
      <groupId>io.swagger.core.v3</groupId>
      <artifactId>swagger-core</artifactId>
      <version>2.2.8</version>
    </dependency>
    <dependency>
      <groupId>org.threeten</groupId>
      <artifactId>threetenbp</artifactId>
      <version>1.6.8</version>
    </dependency>
Copy to Clipboard Toggle word wrap

1.8.6. 옵션

플러그인은 다음과 같은 추가 옵션을 지원합니다.

Expand
매개변수기본값설명

swaggerCodegenMavenPluginVersion

3.0.36

사용할 io.swagger.codegen.v3:swagger-codegen-maven-plugin maven 플러그인의 버전입니다.

modelOutput

 

대상 출력 경로(기본값은 ${project.build.directory}/generated-sources/openapi)

modelPackage

io.swagger.client.model

생성된 모델 오브젝트/classes에 사용할 패키지

modelNamePrefix

 

모델 클래스 및 CloudEvents의 사전 또는 접미사를 설정합니다.

modelNameSuffix

 

모델 클래스 및 CloudEvents의 사전 또는 접미사를 설정합니다.

modelWithXml

false

생성된 모델 내에서 XML 주석을 활성화합니다(JSON 및 XML에 대한 지원을 제공하는 라이브러리에서만 작동)

configOptions

 

언어별 매개변수 맵을 swagger-codegen-maven-plugin에 전달합니다.

1.8.7. camel-restdsl-openapi:generate-xml

Camel REST DSL OpenApi Maven 플러그인의 camel-restdsl-openapi:generate-xml 목표는 Maven에서 REST DSL XML 구현 소스 코드를 생성하는 데 사용됩니다.

1.8.8. 옵션

플러그인은 명령줄( -D 구문 사용)에서 구성하거나 < configuration > 태그의 pom.xml 파일에 정의할 수 있는 다음 옵션을 지원합니다.

Expand
매개변수기본값설명

skip

false

코드 생성을 건너뛰려면 true 로 설정합니다.

filterOperation

 

지정된 작업 ID만 포함합니다. 여러 ID는 쉼표로 구분할 수 있습니다. 와일드카드를 사용할 수 있습니다. eg find* to include all operations starting with find.

specificationUri

src/spec/openapi.json

OpenApi 사양의 URI는 기본적으로 프로젝트 디렉터리 내에서 파일 시스템 경로, HTTP 및 classpath 리소스를 지원합니다. JSON 및 YAML을 지원합니다.

auth

 

OpenApi 사양 정의를 원격으로 가져올 때 권한 부여 헤더를 추가합니다. name:header의 URL 인코딩 문자열을 쉼표로 구분하여 여러 값을 구분합니다.

outputDirectory

generated-sources/restdsl-openapi

생성된 소스 파일을 프로젝트 디렉터리에 기본적으로 generate -sources/restdsl-openapi 로 배치하는 위치

fileName

camel-rest.xml

XML 파일의 이름입니다.

blueprint

false

활성화하면 Spring XML 대신 OSGi Blueprint XML이 생성됩니다.

destinationGenerator

 

대상 끝점 사용자 지정을 위해 org.apache.camel.generator.openapi.DestinationGenerator 인터페이스를 구현하는 클래스의 정규화된 클래스 이름입니다.

destinationToSyntax

direct:${operationId}

직접 구성 요소를 사용하는 의 기본 구문입니다.

 

restConfiguration

true

감지된 나머지 구성 요소가 있는 나머지 구성의 생성을 포함할지 여부입니다.

apiContextPath

 

restConfigurationtrue 로 설정된 경우 openapi 엔드포인트 경로를 정의합니다.

clientRequestValidation

false

요청 유효성 검사를 활성화할지 여부입니다.

basePath

 

OpenAPI 사양에 정의된 api 기본 경로를 덮어씁니다.

requestMappingValues

/**

1.8.9. camel-restdsl-openapi:generate-xml-with-dto

generate-xml 목표 역할을 하지만 OpenApi 사양에서 DTO 모델 클래스의 java 소스 코드를 생성하기 위해 swagger-codegen-maven-plugin을 자동으로 실행하여 DTO 모델 클래스를 생성합니다.

이 플러그인은 모델 DTO를 생성하기 위해 swagger-codegen-maven-plugin을 사용하기 위한 적절한 기본값 집합만 지원하도록 제한되었습니다. 더 많은 기능과 유연성이 필요한 경우 Swagger Codegen Maven 플러그인 을 직접 사용하여 이 플러그인이 아닌 DTO를 생성합니다.

DTO 클래스에는 다음과 같은 추가 종속 항목이 필요할 수 있습니다.

    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.10.1</version>
    </dependency>
    <dependency>
      <groupId>io.swagger.core.v3</groupId>
      <artifactId>swagger-core</artifactId>
      <version>2.2.8</version>
    </dependency>
    <dependency>
      <groupId>org.threeten</groupId>
      <artifactId>threetenbp</artifactId>
      <version>1.6.8</version>
    </dependency>
Copy to Clipboard Toggle word wrap

1.8.10. 옵션

플러그인은 다음과 같은 추가 옵션을 지원합니다.

Expand
매개변수기본값설명

swaggerCodegenMavenPluginVersion

3.0.36

사용할 io.swagger.codegen.v3:swagger-codegen-maven-plugin maven 플러그인의 버전입니다.

modelOutput

 

대상 출력 경로(기본값은 ${project.build.directory}/generated-sources/openapi)

modelPackage

io.swagger.client.model

생성된 모델 오브젝트/classes에 사용할 패키지

modelNamePrefix

 

모델 클래스 및 CloudEvents의 사전 또는 접미사를 설정합니다.

modelNameSuffix

 

모델 클래스 및 CloudEvents의 사전 또는 접미사를 설정합니다.

modelWithXml

false

생성된 모델 내에서 XML 주석을 활성화합니다(JSON 및 XML에 대한 지원을 제공하는 라이브러리에서만 작동)

configOptions

 

언어별 매개변수 맵을 swagger-codegen-maven-plugin에 전달합니다.

1.8.11. camel-restdsl-openapi:generate-yaml

Camel REST DSL OpenApi Maven 플러그인의 camel-restdsl-openapi:generate-yaml 목표는 Maven에서 REST DSL YAML 구현 소스 코드를 생성하는 데 사용됩니다.

1.8.12. 옵션

플러그인은 명령줄( -D 구문 사용)에서 구성하거나 < configuration > 태그의 pom.xml 파일에 정의할 수 있는 다음 옵션을 지원합니다.

Expand
매개변수기본값설명

skip

false

코드 생성을 건너뛰려면 true 로 설정합니다.

filterOperation

 

지정된 작업 ID만 포함합니다. 여러 ID는 쉼표로 구분할 수 있습니다. 와일드카드를 사용할 수 있습니다. eg find* to include all operations starting with find.

specificationUri

src/spec/openapi.json

OpenApi 사양의 URI는 기본적으로 프로젝트 디렉터리 내에서 파일 시스템 경로, HTTP 및 classpath 리소스를 지원합니다. JSON 및 YAML을 지원합니다.

auth

 

OpenApi 사양 정의를 원격으로 가져올 때 권한 부여 헤더를 추가합니다. name:header의 URL 인코딩 문자열을 쉼표로 구분하여 여러 값을 구분합니다.

outputDirectory

generated-sources/restdsl-openapi

생성된 소스 파일을 프로젝트 디렉터리에 기본적으로 generate -sources/restdsl-openapi 로 배치하는 위치

fileName

camel-rest.xml

XML 파일의 이름입니다.

destinationGenerator

 

대상 끝점 사용자 지정을 위해 org.apache.camel.generator.openapi.DestinationGenerator 인터페이스를 구현하는 클래스의 정규화된 클래스 이름입니다.

destinationToSyntax

direct:${operationId}

직접 구성 요소를 사용하는 의 기본 구문입니다.

 

restConfiguration

true

감지된 나머지 구성 요소가 있는 나머지 구성의 생성을 포함할지 여부입니다.

apiContextPath

 

restConfigurationtrue 로 설정된 경우 openapi 엔드포인트 경로를 정의합니다.

clientRequestValidation

false

요청 유효성 검사를 활성화할지 여부입니다.

basePath

 

OpenAPI 사양에 정의된 api 기본 경로를 덮어씁니다.

requestMappingValues

/**

1.8.13. camel-restdsl-openapi:generate-yaml-with-dto

generate-yaml 목표 역할을 하지만 OpenApi 사양에서 DTO 모델 클래스의 java 소스 코드를 생성하기 위해 swagger-codegen-maven-plugin을 자동으로 실행하여 DTO 모델 클래스를 생성합니다.

이 플러그인은 모델 DTO를 생성하기 위해 swagger-codegen-maven-plugin 을 사용하기 위한 적절한 기본값 집합만 지원하도록 제한되었습니다. 더 많은 기능과 유연성이 필요한 경우 Swagger Codegen Maven 플러그인 을 직접 사용하여 이 플러그인이 아닌 DTO를 생성합니다.

DTO 클래스에는 다음과 같은 추가 종속 항목이 필요할 수 있습니다.

    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.10.1</version>
    </dependency>
    <dependency>
      <groupId>io.swagger.core.v3</groupId>
      <artifactId>swagger-core</artifactId>
      <version>2.2.8</version>
    </dependency>
    <dependency>
      <groupId>org.threeten</groupId>
      <artifactId>threetenbp</artifactId>
      <version>1.6.8</version>
    </dependency>
Copy to Clipboard Toggle word wrap

1.8.14. 옵션

플러그인은 다음과 같은 추가 옵션을 지원합니다.

Expand
매개변수기본값설명

swaggerCodegenMavenPluginVersion

3.0.36

사용할 io.swagger.codegen.v3:swagger-codegen-maven-plugin maven 플러그인의 버전입니다.

modelOutput

 

대상 출력 경로(기본값은 ${project.build.directory}/generated-sources/openapi)

modelPackage

io.swagger.client.model

생성된 모델 오브젝트/classes에 사용할 패키지

modelNamePrefix

 

모델 클래스 및 CloudEvents의 사전 또는 접미사를 설정합니다.

modelNameSuffix

 

모델 클래스 및 CloudEvents의 사전 또는 접미사를 설정합니다.

modelWithXml

false

생성된 모델 내에서 XML 주석을 활성화합니다(JSON 및 XML에 대한 지원을 제공하는 라이브러리에서만 작동)

configOptions

 

언어별 매개변수 맵을 swagger-codegen-maven-plugin에 전달합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat