User Tools

Site Tools


lecture:leiningen:srcs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

lecture:leiningen:srcs [2013/02/26 10:37]
psk810 [프로젝트 구조]
lecture:leiningen:srcs [2019/02/04 14:26]
Line 1: Line 1:
-====== 소스 분석 ====== 
  
-===== 프로젝트 구조 ===== 
- 
-<​code>​ 
-. 
-├── bin 
-├── doc 
-├── lein-pprint 
-│   ├── project.clj 
-│   └── src 
-│   ​    ​└── leiningen 
-│   ​        ​└── pprint.clj 
-├── leiningen-core 
-│   ├── dev-resources 
-│   │   ├── p1.clj 
-│   │   ├── p2.clj 
-│   │   └── p3.clj 
-│   ├── project.clj 
-│   ├── resources 
-│   ├── src 
-│   │   └── leiningen 
-│   │   ​    ​└── core 
-│   │   ​        ​├── classpath.clj 
-│   │   ​        ​├── eval.clj 
-│   │   ​        ​├── main.clj 
-│   │   ​        ​├── project.clj 
-│   │   ​        ​├── ssl.clj 
-│   │   ​        ​├── user.clj 
-│   │   ​        ​└── utils.clj 
-│   ├── target 
-│   │   ├── classes 
-│   │   └── stale 
-│   └── test 
-│   ​    ​└── leiningen 
-│   ​        ​├── bluuugh.clj 
-│   ​        ​├── core 
-│   ​        ​│   └── test 
-│   ​        ​│   ​    ​├── classpath.clj 
-│   ​        ​│   ​    ​├── eval.clj 
-│   ​        ​│   ​    ​├── main.clj 
-│   ​        ​│   ​    ​└── project.clj 
-│   ​        ​├── one_or_two.clj 
-│   ​        ​└── var_args.clj 
-├── project.clj 
-├── resources 
-│   └── leiningen 
-│   ​    ​└── help 
-├── sample.project.clj 
-├── src 
-│   └── leiningen 
-│   ​    ​├── check.clj 
-│   ​    ​├── classpath.clj 
-│   ​    ​├── clean.clj 
-│   ​    ​├── compile.clj 
-│   ​    ​├── deploy.clj 
-│   ​    ​├── deps.clj 
-│   ​    ​├── do.clj 
-│   ​    ​├── help.clj 
-│   ​    ​├── install.clj 
-│   ​    ​├── jar.clj 
-│   ​    ​├── javac.clj 
-│   ​    ​├── plugin.clj 
-│   ​    ​├── pom.clj 
-│   ​    ​├── repl.clj 
-│   ​    ​├── retest.clj 
-│   ​    ​├── run.clj 
-│   ​    ​├── search.clj 
-│   ​    ​├── show_profiles.clj 
-│   ​    ​├── test.clj 
-│   ​    ​├── trampoline.clj 
-│   ​    ​├── uberjar.clj 
-│   ​    ​├── upgrade.clj 
-│   ​    ​├── version.clj 
-│   ​    ​└── with_profile.clj 
-├── target 
-│   └── stale 
-├── test 
-│   └── leiningen 
-│   ​    ​└── test 
-│   ​        ​├── compile.clj 
-│   ​        ​├── deploy.clj 
-│   ​        ​├── deps.clj 
-│   ​        ​├── do.clj 
-│   ​        ​├── help.clj 
-│   ​        ​├── helper.clj 
-│   ​        ​├── install.clj 
-│   ​        ​├── jar.clj 
-│   ​        ​├── javac.clj 
-│   ​        ​├── new.clj 
-│   ​        ​├── pom.clj 
-│   ​        ​├── repl.clj 
-│   ​        ​├── run.clj 
-│   ​        ​├── search.clj 
-│   ​        ​├── test.clj 
-│   ​        ​└── uberjar.clj 
-└── test_projects 
-    ├── native 
-    │   └── project.clj 
-    ├── overlapped-sourcepaths 
-    │   ├── project.clj 
-    │   └── src 
-    ├── sample 
-    │   ├── checkouts 
-    │   │   └── sample2 
-    │   │   ​    ​├── project.clj 
-    │   │   ​    ​├── src 
-    │   │   ​    ​│   └── sample2 
-    │   │   ​    ​│   ​    ​├── alt.clj 
-    │   │   ​    ​│   ​    ​└── core.clj 
-    │   │   ​    ​└── test 
-    │   │   ​        ​└── sample2 
-    │   │   ​            ​└── core_test.clj 
-    │   ├── project.clj 
-    │   ├── src 
-    │   │   └── nom 
-    │   │   ​    ​└── nom 
-    │   │   ​        ​└── nom.clj 
-    │   └── test 
-    │   ​    ​└── test_nom_nom_nom.clj 
-    ├── sample_failing 
-    │   ├── project.clj 
-    │   └── src 
-    │   ​    ​└── nom 
-    │   ​        ​└── nom 
-    │   ​            ​└── nom.clj 
-    ├── sample_no_aot 
-    │   ├── project.clj 
-    │   ├── src 
-    │   │   └── nom 
-    │   │   ​    ​└── nom 
-    │   │   ​        ​└── nom.clj 
-    │   └── test 
-    │   ​    ​└── selectors.clj 
-    └── tricky-name 
-        ├── project.clj 
-        └── src 
-            └── org 
-                └── domain 
-                    └── tricky_name 
-                        ├── brunch.clj 
-                        ├── core.clj 
-                        └── munch.clj 
- 
-58 directories,​ 80 files 
-</​code>​ 
- 
-leiningen-core 폴더가 Leiningen의 엔진에 해당한다. \\ 
-leiningen-core/​dev-resource는 템플릿 소스들이 있다. 
- 
-src 폴더는 Leiningen의 작업(Task)별로 .clj 파일이 들어있다. 각 파일들은 각각 Leiningen은 작업(Task)를 수행한다.(lein의 옵션들과 일대일 대칭이다.) 
- 
-===== Leiningen이 의존하는 다른 프로젝트들 ===== 
- 
-leiningen-core/​project.clj 파일을 보면 Leiningen 엔진이 의존하는 다른 프로젝트들을 알 수 있는데, 다음과 같다. 
- 
-  * [[https://​github.com/​Raynes/​bultitude|bultitude]] : classpath 상에서 이름공간을 찾아내는 라이브러리 
-  * [[https://​github.com/​flatland/​classlojure|classlojure]] : classpath 별로 클래스 로더를 만든다. 
-  * [[https://​github.com/​flatland/​useful|useful]] : 여러가지 유용한 유틸리티들. 
-  * [[https://​github.com/​technomancy/​robert-hooke|robert/​hooke]] : Leiningen의 훅킹을 지원하는 라이브러리 
-  * [[https://​github.com/​cemerick/​pomegranate|com.cemerick/​pomegranate]] : Maven 레포지토리 관리 라이브러리 Aether의 클로져 래퍼. 
-  * [[https://​github.com/​tobias/​dynapath|org.tcrawley/​dynapath]] : 클래스 로더를 위한 프로토콜 제공. 
lecture/leiningen/srcs.txt · Last modified: 2019/02/04 14:26 (external edit)