728x90
✅ 1. Marven을 사용한 프로젝트 생성하기
먼저 Marven을 사용항 프로젝트를 만들고 그다음 Gradle을 사용해 간단한 애플케이션을 만들어보겠습니다.
- Maven 설치
- maven 공식사이트에서 다운
- 압축 풀고 환경변수 MAVEN_HOME 설정 후 PATH 추가
- 터미널에서 mvn -v 로 버전확인
- 프로젝트 생성
mvn archetype:generate \
-DgroupId=com.example \
-DartifactId=demo-app \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DinteractiveMode=false
- 프로젝트 구조
demo-app/
├── pom.xml
└── src
├── main
│ └── java
│ └── com/example/App.java
└── test
└── java
- Gradle 설치
- Gradle 공식 사이트 참고
- 환경변수 GRADLE_HOME 설정 후 PATH 추가
- 설치 오류시 choco를 사용해 다운로드
choco install gradle
gradel -v
- 프로젝트 생성
- gradle init 명령어로 프로젝트 생성
- application 선택
- 언어: Java
- 빌드 스크립트: Groovy or Kotlin
- gradle init 명령어로 프로젝트 생성
- 프로젝트 구조
demo-app/
├── build.gradle
├── settings.gradle
└── src
├── main
│ └── java
│ └── com/example/App.java
└── test
└── java
✅ 2. 간단한 애플리케이션 만들기
🚀 콘솔 기반 예제 (Hello World) - Gradle 기준
// App.java
package org.example;
public class App {
public static void main(String[] args) {
System.out.println("Hello, Java Project!");
}
}
- Maven 빌드 및 실행
mvn compile
mvn exec:java -Dexec.mainClass="com.example.App"
- Gradle 빌드 및 실행 - 오류 발생시 AppTest.java 수정
/*
* This source file was generated by the Gradle 'init' task
*/
package org.example;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class AppTest {
@Test void appHasAGreeting() {
App classUnderTest = new App(); // 이부분 아래에서 지우고 아래처럼 수정
assertNotNull("Hello World" , "app should have a greeting");
}
}
gradle build
gradle run
정상적으로 실행 완료 시 "Hello World" 가 출력될 것 입니다
✅ 3. 간단한 GUI 예제 (Swing)
실행 시 버튼을 누르면 팝업이 뜨는 GUI를 만들어 보겠습니다. 일반적으로 java에 swing을 사용합니다.
package org.example;
import javax.swing.*;
public class App {
// public String getGreString() {
// return "Hello World";
// }
public static void main(String[] args) {
JFrame frame = new JFrame("GUI Sample");
JButton button = new JButton("Click");
button.addActionListener(e ->
JOptionPane.showMessageDialog(frame, "Button Clicked!")
);
frame.add(button); // 버튼
frame.setSize(300, 200); // 해상도
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 닫기 구현
frame.setVisible(true); // 종료시 프로그램이 꺼짐
}
}
GitHub - Koras02/java-bloging: https://thinky.tistory.com/category/Back-End/Java
https://thinky.tistory.com/category/Back-End/Java. Contribute to Koras02/java-bloging development by creating an account on GitHub.
github.com
728x90
LIST
'Back-End > Java' 카테고리의 다른 글
[Java] 11장 멀티 스레딩 (4) | 2025.08.10 |
---|---|
[Java] 10장 파일 입출력 (0) | 2025.08.06 |
[Java] 9장 컬렉션 프레임워크 (0) | 2025.03.25 |
[Java] 8장 try-catch 문 (0) | 2025.03.18 |
[Java] 7장 인터페이스 (0) | 2025.03.08 |