옵션:jar을 만들 때 filespec은 취약합니다
4660 단어 leiningen
묘사
레닌겐이 만든 항아리에 서류를 넣고 싶어요.project.clj
에 다음 행이 추가되었습니다.:filespecs [{:type :path :path "profiles.clj"}]
일이 예정대로 진행되다.다음.lein-env
::filespecs [{:type :path :path "profiles.clj"}
{:type :path :path ".lein-env"}]
소용 없어.나는 일찍이 이 옵션을 시험해 보았지만, 시간이 좀 지나자 포기했다.그리고 쓰레기 '.swp' 파일을 삭제하기로 결정했습니다. (Vim은 프로젝트 디렉터리 전체를 잠갔습니다.) 그래서 이 줄을 추가했습니다.
:jar-exclusions [#".*.swp"]
그리고 BANG
.lein-env
항아리에 신기하게 담겼어요!깡통 목록을 보려면 다음과 같이 하십시오.
해당
:filespecs
:Archive: example-0.1.0-SNAPSHOT.jar
Length Date Time Name
-------- ---- ---- ----
72 06-28-13 15:46 META-INF/MANIFEST.MF
3256 06-28-13 15:46 META-INF/maven/example/example/pom.xml
99 06-28-13 15:46 META-INF/maven/example/example/pom.properties
1523 06-28-13 15:46 META-INF/leiningen/example/example/project.clj
1523 06-28-13 15:46 project.clj
1249 06-24-13 20:31 environ/core.clj
12288 06-25-13 14:16 example/.auth.clj.swp
12288 06-17-13 13:31 example/.blobs.clj.swp
12288 06-25-13 15:03 example/.cache.clj.swp
16384 06-28-13 13:45 example/.catalogue.clj.swp
12288 06-21-13 14:09 example/.core.clj.swp
12288 06-24-13 19:55 example/.db.clj.swp
12288 06-27-13 19:02 example/.middleware.clj.swp
12288 06-28-13 14:06 example/.order.clj.swp
12288 06-25-13 14:47 example/.response.clj.swp
12288 06-25-13 18:30 example/.session.clj.swp
12288 06-27-13 17:14 example/.user.clj.swp
59 06-25-13 14:16 example/auth.clj
894 06-03-13 20:49 example/blobs.clj
476 06-25-13 15:03 example/cache.clj
3525 06-28-13 13:45 example/catalogue.clj
1529 06-21-13 14:08 example/core.clj
383 06-24-13 19:55 example/db.clj
2271 06-27-13 19:01 example/middleware.clj
3332 06-28-13 14:06 example/order.clj
442 06-25-13 14:47 example/response.clj
1409 06-25-13 18:30 example/session.clj
1883 06-27-13 17:14 example/user.clj
67 05-30-13 16:53 immutant/init.clj
572 06-25-13 11:24 profiles.clj
-------- -------
163828 30 files
이제 :filespecs
와:jar-exclusions
:Archive: /Users/user/dev/clojure/example/target/dev+provided/example-0.1.0-SNAPSHOT.jar
Length Date Time Name
-------- ---- ---- ----
72 06-28-13 15:50 META-INF/MANIFEST.MF
3256 06-28-13 15:50 META-INF/maven/example/example/pom.xml
99 06-28-13 15:50 META-INF/maven/example/example/pom.properties
1521 06-28-13 15:50 META-INF/leiningen/example/example/project.clj
1521 06-28-13 15:50 project.clj
1249 06-24-13 20:31 environ/core.clj
59 06-25-13 14:16 example/auth.clj
894 06-03-13 20:49 example/blobs.clj
476 06-25-13 15:03 example/cache.clj
3525 06-28-13 13:45 example/catalogue.clj
1529 06-21-13 14:08 example/core.clj
383 06-24-13 19:55 example/db.clj
2271 06-27-13 19:01 example/middleware.clj
3332 06-28-13 14:06 example/order.clj
442 06-25-13 14:47 example/response.clj
1409 06-25-13 18:30 example/session.clj
1883 06-27-13 17:14 example/user.clj
67 05-30-13 16:53 immutant/init.clj
572 06-25-13 11:24 profiles.clj
106 06-28-13 15:50 .lein-env
-------- -------
24666 20 files
이 모든 것은 OSX 10.8.4lein --version
에서 발생합니다.Leiningen 2.2.0 on Java 1.6.0_45 Java HotSpot(TM) 64-Bit Server VM
토론 #1
죄송합니다. @hyPiRion은 이 글을 쓰기 시작했을 때 #1241을 눈치채지 못했습니다.토론 #2
아, 걱정하지 마세요. 이게 훨씬 상세해요.토론 #셋
괜찮다.고맙습니다.토론 #4
:filespecs
와:jar-exclusions
/:uberjar-exclusions
사이에 우선순위 충돌이 존재하지만 이 특정한 예에 대해 어느 것을 우선적으로 고려해야 하는지 의심할 여지가 없다.내일 나는 충돌의 현황과 충돌의 현재 해결 방식을 포함한 더욱 상세한 문제를 충실하게 할 것이다.재미있는 기본 처리도 있는데, 나는 우리가 보아야 한다고 생각한다.
그러나 이런 상황에 대해 주인은 이제 일을 잘 운영하고 이성적으로 처리할 수 있을 것이다.
토론 #5
그리고 @residentsummer (주제에서 벗어난) @residentsummer. 정규 표현식은vim 교환 파일과 일치하지 않을 수도 있다는 것을 방금 깨달았습니다..swp
로 끝나는 모든 파일만 제외하려면 #"\.swp$"
는 더 좋은 정규 표현식이다.감사합니다 @hyPirion!나는 방금 나의 사건이 최신 라이언과 호흡을 맞췄는지 확인했고, 확실히 그랬다.
그리고 레렉스 힌트 고마워요!
Reference
이 문제에 관하여(옵션:jar을 만들 때 filespec은 취약합니다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://github.com/technomancy/leiningen/issues/1242텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)