What is Package?
A package is a namespace that organizes a set of related files, classes and interfaces. Conceptually you can think of packages as being similar to different folders on your computer. In Java world, Packages (sometimes called namespaces) are used to give a separate identity (name) to a group of classes.
What is a application package?
Application package software, or simply an application package, is a collection of software programs that have been developed for the purpose of being licensed to third-party organizations.
Why to do Package Management?
- Package Versioning
- Easy Deployment
- Manage the package
- Build package
- Distribute the package
- Avoid Complexity
- Package Dependency Management
- To Store the artifact
- Standard Process and Directory Layout
- Saving time
- Integrity of the package
- Availability is time consuming
- Security
- Enforces for Standard Process
- Maintenance & Cleanup
- Schedule the maintenance
- Backup
- Mirror
Types of Package?
- Source file Package – This package contains a file which is human readable. The javadoc tool generates output that originates from the following types of source files: Java language source files for classes (.java)
- Binary file Package – This package contains a file which is machine readable in binary format. For example, A Java jar package organizes Java classes into namespaces. or .exe file
Lifecycle of Package?
Why do we need a Application Packaging?
- Hiding the complexity of the software config
- Having the proper versioning
- Having the name of the softare
- Remove it, Upgrade it, Install it
System Based Packaging
- Windows
— EXE – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE
— MSI – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE - Linux – CENTOS / RHEL
— RPM – Developed using RPMBUILD - LINUX – UBUNTU
— DEB – DEBIAN - LINUX – DEB
— DEB – DEBIAN - MAC
— DMG – DMG
Application Based Packaging
- JAVA
— EAR – Developed using MAVEN, ANT, JAVA
— JAR – Developed using MAVEN, ANT, JAVA
— WAR – Developed using MAVEN, ANT, JAVA
— BIN – Developed using EJB
— TAR – Developed using WINTAR,, TARBALL,
— ZIP – Developed using WINZIP - DOT NET
— MSI – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE
— EXE – Developed using VS, INSTALLANYWHERE, INSTALLSHIELD, WISE
— DLL – Developed using VSS, COMMANDS, - Other Language
— RUBY – RVM
— GROVY – gvm
— PYTHON – pip
— PERL – ppm
Repository Management System
CENTRAL –> PRIVATE –> LOCAL –>
Some of the CENTRAL Repository Management System
- repo.apache.org
- yum reposittory
- Maven Repo
- apt repostiry
- Nuget Gallery
- Google Play
- Apple Store
- Docker hub
Some of the PRIVATE Repository Management System
- Sonatype NEXUS
- Jfrog ARTIFACTORY
- Apache ARCHIVA
Application packaging Tools and Software
- WiseStudio
- Installanywhere
- Installshild
- wix
- Visual Studip
- Android Studio
- Winzip
- Zip
- tar
- rpmbuild
- Appdynamics Demo Video - December 6, 2024
- PyTorch Lab – 9 – Pytorch CUDA Semantics - December 6, 2024
- PyTorch Lab – 8 – Pytorch Install And Setup Tensorflow Hidden Layer - December 6, 2024