Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CSC305 Summer Lecture 04

CSC305 Summer Lecture 04

Individual Software Design and Development
Maven
(202508)

Avatar for Javier Gonzalez-Sanchez

Javier Gonzalez-Sanchez PRO

August 01, 2025
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227

    CSC 305 Individual Software Design and Development | Summer Version Lecture 04. Maven
  2. Library • A collection of resources (cl a sses) •

    A J a v a Archive, or JAR f ile, cont a ins a ll of the v a rious components th a t m a ke up a self- cont a ined, execut a ble J a v a a pplic a tion or, most commonly, a J a v a libr a ry to which a J a v a Runtime Environment c a n link. 3
  3. • Build m a n a gement tool • M

    a ven a utom a tes dependency m a n a gement by a utom a tic a lly downlo a ding required libr a ries a nd their dependencies, ensuring consistent builds with speci f ied versions. • In contr a st, m a nu a lly downlo a ding JARs is l a bor-intensive a nd error-prone. 5
  4. • The project object model (POM) f ile describes a

    project a nd its dependencies. • A st a nd a rdized directory form a t. • Repositories where third-p a rty softw a re is stored a nd discovered. 6
  5. Jsoup • A J a v a libr a ry

    th a t simpli f ies working with HTML a nd XML. • O ff ers URL fetching, d a t a p a rsing, extr a ction, a nd m a nipul a tion. • https://jsoup.org/ 17
  6. JavaParser • A J a v a libr a ry

    to a n a lyze, tr a nsform, a nd gener a te J a v a code. • https://j a v a p a rser.org/ 29
  7. JFreeChart • https://www.jfree.org/jfreech a rt/ • JFreeCh a rt is

    a libr a ry to displ a y profession a l-qu a lity ch a rts. 37
  8. Weka • Wek a is a collection of m a

    chine le a rning a nd d a t a a n a lysis • W a ik a to Environment for Knowledge An a lysis (Wek a ) • developed a t the University of W a ik a to, New Ze a l a nd • https://ml.cms.w a ik a to. a c.nz/wek a • 45
  9. 115,475 Towns and Cities in the United States July, 2012

    https://www.math.uwaterloo.ca/tsp/data/usa/index.html A dataset 54
  10. Eclipse Paho for Java Wh a t is Eclipse P

    a ho? • A set of MQTT client libr a ries developed by the Eclipse Found a tion. • It supports multiple l a ngu a ges, such a s J a v a , Python, J a v a Script, etc. J a v a Dependency (M a ven) <dependency> <groupId>org.eclipse.paho</groupId> <artifactId>org.eclipse.paho.client.mqttv3</artifactId> <version>1.2.5</version> </dependency> 57
  11. MariaDB • Open-source a nd cre a ted by MySQL

    origin a l developers • https://m a ri a db.com/downlo a ds/ • For M a c, you c a n use the Homebrew p a ck a ge m a n a ger: > brew install mariadb > mysql.server start 63
  12. Create Tables 67 CREATE TABLE database.students ( ID INT NOT

    NULL, user VARCHAR(8) NOT NULL , password VARCHAR(8) NOT NULL ) INSERT INTO students (ID, user, password) VALUES (1, "javiergs", "qwerty")
  13. Lab

  14. Let’s Work 75 A. Configure Maven B. Add a Dependency

    C. Create an example D. Show me your (Java) and POM file
  15. CSC 305 Individual Software Design and Development Javier Gonzalez-Sanchez, Ph.D.

    [email protected] Summer 2025 Copyright. These slides can only be used as study material for the class CSC305 at Cal Poly. They cannot be distributed or used for another purpose.