
이 글은 Heroku 플랫폼에서 Java 앱을 설정하는 데 도움이 됩니다. 클라우드에서 Java 앱을 사용하여 이메일을 보내는 Aspose.Email Cloud를 사용하는 방법을 설명합니다.
Heroku는 개발자가 클라우드에서 애플리케이션을 완전히 빌드, 실행 및 운영할 수 있도록 하는 서비스형 플랫폼(PaaS)입니다. Java를 포함한 여러 프로그래밍 언어를 지원합니다. Heroku를 사용하면 Java 앱을 쉽게 배포하고 확장할 수 있습니다. Tomcat이나 Jetty와 같은 애플리케이션 서버에서 표준 라이브러리를 사용하든 Spring이나 Play와 같은 프레임워크를 사용하든 Heroku는 좋아하는 도구로 원하는 방식으로 빌드할 수 있도록 도와줍니다. 이 블로그에서는 Heroku에 Java 앱을 배포하는 방법을 안내합니다. 이 문서에서는 Aspose.Email Cloud를 이해하고 Heroku Java 앱을 사용하여 이메일을 보내는 방법을 설명합니다. 이 문서에서는 이미 무료 Heroku 계정이 설정되어 있고 Java 8과 Maven 3이 로컬에 설치되어 있다고 가정합니다. Maven은 주로 Java 프로젝트를 위한 POM(프로젝트 개체 모델)을 기반으로 하는 강력한 프로젝트 관리 도구입니다. Maven은 C#, Ruby, Scala 및 기타 언어로 작성된 프로젝트를 빌드하고 관리하는 데에도 사용할 수 있습니다. 프로젝트 빌드, 종속성 및 문서화에 사용됩니다. ANT와 같이 빌드 프로세스를 간소화합니다. 하지만 ANT보다 훨씬 발전했습니다. 간단히 말해서, Maven은 모든 Java 기반 프로젝트를 빌드하고 관리하는 데 사용할 수 있는 도구입니다. Maven은 Java 개발자의 일상 업무를 더욱 쉽게 만들어 주며, 일반적으로 모든 Java 기반 프로젝트를 이해하는 데 도움이 됩니다. 시작해 볼까요!
Heroku 설정
시작하려면 먼저 Heroku 명령줄 인터페이스(CLI)를 설치해야 합니다. Heroku CLI는 다양한 확장성 작업을 관리하고 수행하는 데 사용됩니다. 이를 사용하여 애드온을 프로비저닝하고, 애플리케이션 로그를 보고, 로컬에서 애플리케이션을 실행할 수 있습니다. macOS를 사용하는 경우 Homebrew를 사용하여 설치하거나 공식 Heroku를 방문할 수 있습니다.
brew install heroku/brew/heroku
설치가 완료되면 다음 명령을 실행하여 Heroku를 로컬에서 사용할 수 있도록 인증할 수 있습니다.
heroku login
heroku: Press any key to open up the browser to login or q to exit
› Warning: If browser does not open, visit
› https://cli-auth.heroku.com/auth/browser/\*\*\*
heroku: Waiting for login...
Logging in... done
Logged in as me@example.com
이 명령은 인증을 위해 브라우저를 Heroku 로그인 페이지로 엽니다. 이는 Heroku와 git 명령이 제대로 작동하는 데 필요합니다.
Aspose.Email Cloud 설정
Aspose.Email Cloud는 클라우드 이메일을 보내고, 받고, 추가하고, 플래그를 지정하고, 변환하고, 클라우드에서 이메일 보관을 위한 폴더 구조를 만드는 것을 지원하는 클라우드 SDK입니다. 이것은 사용하기 쉽고 빠른 API로, 추가 소프트웨어를 설치할 필요가 없습니다. 이 API는 C#, Java, PHP, Python, Ruby 및 Typescript와 같은 많은 프로그래밍 언어를 지원합니다. Aspose.Email Cloud를 설정하려면 아래 지침을 따르세요.
Aspose.Cloud Dashboard에 로그인하고 왼쪽 사이드바에서 애플리케이션 탭을 클릭합니다. 이제 아래로 스크롤하여 아래 이미지에 표시된 대로 새 애플리케이션 만들기 버튼을 클릭합니다.

이제 아래 이미지에 표시된 대로 기본 저장소를 선택하여 새 애플리케이션을 만드세요. 3자 클라우드 저장소 구성 방법 가이드에 따라 데이터 파일을 업로드하도록 3자 저장소를 구성할 수도 있습니다.

이제 아래 이미지와 같이 클라이언트 ID와 클라이언트 비밀번호를 복사하기 위해 클라이언트 자격 증명 섹션으로 스크롤하세요.

Aspose.Email Cloud를 사용한 이메일 전송
Java 8과 Maven 3을 이미 설치했다고 가정합니다. 이제 간단한 애플리케이션을 포함하는 작동하는 git 저장소가 있습니다. 이 작동하는 Git 저장소에는 간단한 Java 애플리케이션이 포함되어야 합니다. 이 애플리케이션에는 Heroku 앱에서 사용하는 특수한 일반 텍스트 파일인 Procfile이 포함되어 있습니다. 이 파일에서 앱을 시작하는 데 사용되는 프로세스와 명령을 명시적으로 선언합니다.
예제 앱 소스 코드의 Procfile은 다음과 같습니다.
web: java -jar target/java-getting-started-1.0.jar
이 파일은 단일 프로세스 유형인 web과 이를 실행하는 데 필요한 명령을 선언합니다. web이라는 이름이 중요합니다. 이 프로세스 유형이 Heroku의 HTTP 라우팅 스택에 연결되고 웹 트래픽을 수신할 수 있음을 선언합니다. Procfiles는 추가 프로세스 유형을 포함할 수 있습니다. 예를 들어, 대기열에서 항목을 처리하는 백그라운드 워커를 선언할 수 있습니다. 예제 앱에는 Java의 종속성 관리자인 Maven에서 사용하는 pom.xml 파일도 포함되어야 합니다. Heroku는 루트 디렉토리에 pom.xml 파일이 포함되어 있으면 앱을 Java 앱으로 자동 식별합니다.
또 다른 파일인 system.properties는 사용할 Java 버전을 나타냅니다. 이 선택적 파일의 내용은 다음과 같습니다.
java.runtime.version=1.8
먼저 프로젝트에 저장소를 추가하세요
<repository>
<id>aspose-cloud</id>
<name>Aspose.Cloud repository</name>
<url>https://repository.aspose.cloud/repo</url>
</repository>
그리고 종속성을 추가합니다
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email-cloud</artifactId>
</dependency>
이메일 전송을 위해 프로젝트에 다음 코드를 추가하세요.
import com.aspose.email.cloud.sdk.invoker.ApiException;
import com.aspose.email.cloud.sdk.model.\*;
import com.aspose.email.cloud.sdk.api.\*;
EmailCloud api = new EmailCloud("Your Client secret", "Your Client id");
EmailClientAccountPasswordCredentials credentials =
new EmailClientAccountPasswordCredentials(
"example@gmail.com", "password");
// Setup an email account for email sending
EmailClientAccount sendAccountDto = new EmailClientAccount(
"smtp.gmail.com", 465, "SSLAuto", "SMTP", credentials);
String smtpAccount = "smtp.account";
String smtpLocation = new StorageFileLocation(
storageName, accountFolder, smtpAccount);
api.client().account().save(new ClientAccountSaveRequest(
smtpLocation, sendAccountDto));
EmailDto email = new EmailDto()
.from(new MailAddress().address("example@gmail.com"))
.addToItem(new MailAddress().address("to@aspose.com"))
.subject("Some subject")
.body("Some body");
api.client().message().send(
new ClientMessageSendRequest(
smtpLocation, new MailMessageDto(email)));
Heroku에 배포(Java 앱)
모든 변경 작업을 마치고 Heroku(Java 앱)에 배포할 준비가 되면 다음 명령을 사용하여 변경 사항을 Heroku에 푸시할 수 있습니다.
$ heroku create
Creating sharp-rain-321... done, stack is heroku-20
https://sharp-rain-221.herokuapp.com/ | https://git.heroku.com/sharp-rain-321.git
Git remote heroku added
이렇게 하면 Heroku에 git 저장소가 생성되고 이 저장소에 푸시하는 모든 내용은 Heroku Java 앱에 배포됩니다.
$ git push heroku main
이제 heroku open 명령을 사용하여 애플리케이션을 열 수 있습니다.
결론
이 글은 Heroku 플랫폼과 개발자가 클라우드에서 애플리케이션을 빌드, 실행 및 운영할 수 있도록 하는 방법을 설명하는 시리즈의 일부입니다. 또한 Heroku Java 앱을 설정하는 방법도 알아보았습니다. 또한 Aspose.Email Cloud를 살펴보고 이메일 전송을 위한 SMTP 이메일 클라이언트를 설정했습니다. Aspose.Email Cloud는 단순히 이메일을 전송하기 위한 것이 아닙니다. 대신 클라우드 이메일을 보내고, 받고, 추가하고, 플래그를 지정하고, 변환하고, 클라우드에서 이메일을 보관하기 위한 폴더 구조를 만드는 것을 지원하는 클라우드 SDK입니다. 추가 소프트웨어를 설치할 필요가 없는 사용하기 쉽고 빠른 API입니다. 이 API는 C#, Java, PHP, Python, Ruby 및 Typescript와 같은 많은 프로그래밍 언어를 지원합니다. 이 글이 도움이 되었기를 바랍니다.