pipeline { agent any stages { stage('build') { steps { sh 'javac -cp "./src" -d "./bin" $(find . -iname "*.java" -type f) -Xlint:deprecation -encoding UTF8' sh 'echo "BUILDING CLIENT"' sh 'echo Main-Class: clientP2P/ClientP2P > MANIFEST.MF' sh 'jar -cvmf MANIFEST.MF client.jar $(find bin/ -maxdepth 1 -mindepth 1 -printf "-C bin %f\n")' sh 'echo "BUILDING SERVER"' sh 'echo Main-Class: serverP2P/ServerP2P > MANIFEST.MF' sh 'jar -cvmf MANIFEST.MF server.jar $(find bin/ -maxdepth 1 -mindepth 1 -printf "-C bin %f\n")' sh 'echo "BUILDING TRACKER"' sh 'echo Main-Class: tracker/Tracker > MANIFEST.MF' sh 'jar -cvmf MANIFEST.MF tracker.jar $(find bin/ -maxdepth 1 -mindepth 1 -printf "-C bin %f\n")' sh 'echo "BUILDING CLIENT GUI"' sh 'echo Main-Class: gui/Gui > MANIFEST.MF' sh 'jar -cvmf MANIFEST.MF clientGUI.jar $(find bin/ -maxdepth 1 -mindepth 1 -printf "-C bin %f\n")' sh 'echo "CREATING sources.tar.gz"' sh 'tar -zcvf sources.tar.gz src/' } } stage('run') { steps { sh 'ls' } } } post { success { archiveArtifacts artifacts: 'client.jar', fingerprint: true archiveArtifacts artifacts: 'server.jar', fingerprint: true archiveArtifacts artifacts: 'tracker.jar', fingerprint: true archiveArtifacts artifacts: 'clientGUI.jar', fingerprint:true archiveArtifacts artifacts: 'sources.tar.gz', fingerprint: true } } }