מבוא ל Maven אליהו חלסצ'י תכנות מתקדם תרגול מספר 3

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
OpusCollege and Spring-DM. OSGi based web applications – three strategies OSGi container embedded in another container: OSGi Bridge Server (OBS)  e.g.
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
בתרגול הקודם הורשה: –ניתן להרחיב רק מחלקה אחת –כל מה שלא private – עובר בהורשה –המילה השמורה super –יצירת היררכיה –Object היא שורש ההיררכיה –דריסה אופרטור.
Maven: Build and project management in the 21th century.
מבוא כללי למדעי המחשב תרגול 1. כתיבת התוכנה כתיבת התוכנית עצמה נעשית ע " י כתיבת קובץ טקסט רגיל אשר תוכנו מקיים את כללי שפת C כתיבת התוכנית עצמה נעשית.
דוד שוורץ, עידן זק, נטע צור וחיה כהן. הפונקציונאליות : המשתמש יבחר קובץ שעליו הוא רוצה לבצע את האנליזה, וילחץ עליו עם כפתור ימני בעכבר. יפתח תפריט ובו.
תירגול 1 אדמיניסטרציה עבודה עם t2 מערכת הקבצים ב - Unix תכנית ראשונה ב -Unix, gcc.
אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 10 Packages.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
1 תוכנה 1 לפני שמתחילים תוכנה נדרשת כל התוכנות הנדרשות לקורס מותקנות במעבדות המחשבים בבניין שרייבר המעבדות פתוחות 7 ימים בשבוע, 24 שעות ביממה הכניסה.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
חלון הפקודות מיועד לבצע פעולה אחת בכל פעם. כיצד אפשר לבצע רשימת פקודות או אפליקציות מורכבות ?
דוד שוורץ, עידן זק, נטע צור וחיה כהן. הפונקציונאליות:  המשתמש בוחר קובץ שעליו הוא רוצה לבצע את האנליזה, ולוחץ עליו עם כפתור ימני בעכבר.  נפתח תפריט.
מערכות הפעלה ( אביב 2009) חגית עטיה ©1 מערכת קבצים log-structured  ה log הוא העותק היחיד של הנתונים  כאשר משנים בלוק (data, header) פשוט כותבים את הבלוק.
תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
הקדמה Junit ANT SVN הטמעה תכנות מתקדם - תרגול 7 כלים שימושיים 1 אליהו חלסצ'י תכנות מתקדם תכנות מתקדם תרגול מספר 7 תשע"א
Created by Dalia Censor, December העברת רשימת ציטוטים ממאגר ל- RefWorks שתי דרכים להעברת רשומות ממאגר ל- RefWorks : יצוא ישיר ל- RefWorks המאגרים:
מבוא למדעי המחשב, סמסטר א ', תשע " א תרגול מס ' 1 נושאים  הכרת הקורס  פסאודו - קוד / אלגוריתם 1.
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
Text to speech In Mobile Phones איתי לוי. הקדמה שימוש בהודעות טקסט על המכשירים הסלולארים היא דרך תקשורת מאוד פופולארית בימינו אשר משתמשים בה למטרות רבות,
תכנות תרגול 1 שבוע : צור קשר מתרגל – ליעם רודיטי, ביה " ס למדעי המחשב. מתרגל – ליעם רודיטי, ביה " ס למדעי המחשב. דואר אלקטרוני :
APACHE MAVEN Bhavana Sudharshan Jaydeep Patel. Introduction What is Maven? “Maven is a software management and comprehension tool based on the concept.
Maven & Bamboo CONTINUOUS INTEGRATION. QA in a large organization In a large organization that manages over 100 applications and over 20 developers, implementing.
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
תכנות אסינכרוני, תקשורת ופיתוח אפליקציות ל- Windows 8.1 ואפליקציות ל- Windows Phone 8 Control (Part II)
Contents Building Web Services כתב אקת'ם חאג' יחיא BuildingWeb Services Building Web Services
Maven for building Java applications By Nalin De Zoysa
Enterprise Java v090125Dev Env Overview1 Enterprise Java ( ) Development Environment Overview.
שיאון שחוריMilOSS-il מוטיבציה  python זה קל ו C זה מהיר. למה לא לשלב?  יש כבר קוד קיים ב C. אנחנו רוצים להשתמש בו, ולבסס מעליו קוד חדש ב python.
הקדמה Comparator Containers שימושיים Iterator Factory Pattern Trove הטמעה תכנות מתקדם - תרגול 3 Containers ב Java אליהו חלסצ'י תכנות מתקדם
תכנות מכוון עצמים ושפת ++C וויסאם חלילי. TODAY TOPICS: 1. Function Overloading & Default Parameters 2. Arguments By Reference 3. Multiple #include’s 4.
Build Systems Presentation December 14, 2015 Noon-1pm Kathy Lee Simunich Bldg. 203/ D120 Brought to you by: Argonne Java.
Software Deployment & Release 26/03/2015 1EN-ICE.
מבוא למדעי המחשב לתעשייה וניהול הרצאה 6. מפעל השעווה – לולאות  עד עכשיו  טיפלנו בייצור נרות מסוג אחד, במחיר אחיד  למדנו להתמודד עם טיפול במקרים שונים.
1 תרגול 11: Design Patterns ומחלקות פנימיות אסף זריצקי ומתי שמרת 1 תוכנה 1.
1 נתבונן בפונקציה הבאה public static int min(int[] a,int n) { int min = a[0]; for (int i = 1; (i < n ) && (i < a.length) ; i++) if (min > a[i]) min = a[i];
CS520 Web Programming Introduction to Maven Chengyu Sun California State University, Los Angeles.
Maven & NetBeans Platform. Agenda ● Maven NetBeans Platform Project Types ● Three NetBeans RCP project types ● Differences with Ant project types ● All.
Platform & Maven2 David Šimonek. Certified Engineer Course Agenda What is Maven? Why Maven? NB IDE & Maven NB Platform & Maven.
מבוא לטכנולוגיות מחשב מבוא
מספרים אקראיים ניתן לייצר מספרים אקראיים ע"י הפונקציה int rand(void);
Maven 04 March
CS520 Web Programming Introduction to Maven
Plan What is Maven ? Links : mvn command line tool
Bhavana Sudharshan Jaydeep Patel
Test Driven Development
XML מבוא כללי MCSD Doron Amir
Computer Programming Fall 2014 תרגול 2
Hibernate + Java אליהו חלסצ'י תכנות מתקדם תרגול מספר 6
XML מבוא כללי פרק ג' MCSD Doron Amir
SQL בסיסי – הגדרה אינדוקטיבית
טרנזיסטור כמתג דו מצבי ממסר - RELAY הפעלה רציפה , PWM
מבוא ל ASP.NET שיעור 2 : מבוא ל ASP.NET מצגת מס' 2
Computer Programming Fall 2012 תרגול
היכרות עם Java אליהו חלסצ'י תכנות מתקדם תרגול מספר 1
With Some Eclipse Tricks included.
עבודה עם נתונים באמצעות ADO.NET
פרוקטוז, C6H12O6 , חד-סוכר מיוחד
© Keren Kalif Servlet קרן כליף.
בחירת חומר גלם כתב: עמרי שרון.
כתבה וערכה: קרין רוזנר.
תכנות מכוון עצמים ושפת JAVA
תזכורת על מה דיברנו שיעור שעבר? בנינו אתר אינטרנט עם כותרות
Shell Scripts בסביבת UNIX
Computer Programming Fall 2013 תרגול
Computer Programming Fall 2015 תרגול 2
Mendeley - תוכנה חינמית לניהול ביבליוגרפיה
Presentation transcript:

מבוא ל Maven אליהו חלסצ'י תכנות מתקדם 2 89-211 תרגול מספר 3 תש"ע 2009-2010 מבוא ל Maven אליהו חלסצ'י

הקדמה Maven היא תוכנת קוד פתוח מבית apache לניהול מעגל החיים של פיתוח פרויקט. יוצר standard לגבי היכן כל רכיב נמצא. בדומה ל ant בונים איתו פרויקטים אך בניגוד ל ant ישנה שכבת אבסטרקציה שמקצרת משמעותית את שורות הקוד הדרושות לבנייה.

הקדמה POM – project object model הוא קובץ xml המהווה את היחידה הבסיסית ב maven. כל הגדרות הבנייה שמורות בתוכו כגון: Source directory Test source directory Build directory תלויות, Plugins וכו'. בשיעור היום כמבוא ל maven נראה רק דוגמא פשוטה ליצירה ובנייה של פרויקט java פשוט.

התקנה הורדה מתוך : http://maven.apache.org/download.html הוראות התקנה נמצאות בסוף הדף (כמו ב ant יש לפתוח את קובץ ה zip בתיקייה כלשהי ולהוסיפה למשתני הסביבה) בצד לינקים לאינטגרציה עם eclipse או netbeans בדיקת התקנה: D:\>mvn --version Apache Maven 2.1.0 (r755702; 2009-03-18 21:10:27+0200) Java version: 1.6.0_05 Java home: C:\Program Files\Java\jdk1.6.0_05\jre Default locale: iw_IL, platform encoding: Cp1255 OS name: "windows xp" version: "5.1" arch: "x86" Family: "windows"

יצירת פרויקט ניצור תיקיית workspace ובתוכה ניצור פרויקט ע"י: D:\>md mavenProject D:\>cd mavenProject D:\mavenProject>mvn archetype:generate ניצור תיקיית workspace ובתוכה ניצור פרויקט ע"י: כעת נתבקש להכניס archetype, ניתן לבחור מבין 41 המוכנים מראש, נבחר בברירת המחדל 15 – quick start. נתבקש למלא את הפרטים: groupId artifactId (קובץ היעד) version package ולאשר את הפרטים. בפעם הראשונה תהליך זה יכול לקחת קצת זמן עקב הורדה של רכיבים מהרשת. Define value for groupId: : com.advancedProgramming.hello Define value for artifactId: : helloWorldApp Define value for version: 1.0-SNAPSHOT: : Define value for package: com.advancedProgramming.hello: : Confirm properties configuration: ... Y: :

יצירת פרויקט מבנה הפרויקט שהתקבל: נוצרה תיקייה helloWorldApp. בתוכה src עבור הקוד. שם נוצרו main ו test עבור הקוד הראשי ובדיקתו. בתוכן נוצרו התיקיות ע"פ ה package שבחרנו. קבצים: בתוך hello שתחת main נוצר הקובץ App.java שכותב למסך hello world (כמובן...) בתוך hello שתחת test נוצר הקובץ AppTest.java המהווה מחלקת JUnit לבדיקת App.java תחת תיקיית הפרויקט – helloWorldApp נוצר הקובץ pom.xml האחראי על ההגדרות השונות של בניית הפרויקט

יצירת פרויקט pom.xml: (project object model) הגדרת ה xml. הגדרת גרסת המודל – 4.0.0 הגדרות הפרויקט: groupId artifactId – שם קובץ היעד packaging – סוג קובץ היעד גרסת הפרויקט שם הפרויקט הגדרת התלויות: במקרה שלנו ישנה תלות אחת – JUnit עבור הבדיקה.

הרצות שונות קימפול הפרויקט ע"י: D:\mavenProject>cd helloWorldApp D:\mavenProject\helloWorldApp>mvn compile קימפול הפרויקט ע"י: בפעם הראשונה הוא יוריד רכיבים ותלויות הדרושים לקימפול מלא של הפרויקט. נוצרה התיקייה target ובתוכה classes שם נוצרו תיקיות ה package ובפנים הקובץ App.class כדי לקמפל את תוכנית הבדיקה וגם לבצע את הבדיקה עצמה נכתוב: בפעם הראשונה יתבצע download ל JUnit. תוצאה: D:\mavenProject\helloWorldApp>mvn test Tests run: 1, Failures: 0, Errors: 0, Skipped: 0

הרצות שונות יצירת jar ע"י: תחת התיקייה target נוצר לנו הקובץ helloWorldApp-1.0-SNAPSHOT.jar D:\mavenProject\helloWorldApp>mvn package

הטמעה לאחר שנלמד Servlets: קמפלו את תוכניות ה servlet השונות מהשיעורים הקודמים באמצעות maven. תיצרו קובץ war לפרויקט.