Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Copy release artifact zip(eg netbeans-11.23-bin.zip) to current folder.

...

Code Block
BASE_DIR=`pwd`
NB_ALL=$BASE_DIR
export BASE_DIR NB_ALL

DIST=$BASE_DIR/dist
export DIST

if [ -d $DIST ] ; then
rm -rf $DIST
fi

rm -rf NBI-cache

mkdir -p $DIST/zip/moduleclusters
mkdir -p $DIST/logs

ARTIFACT=netbeans-*-bin
BIN_NAME=`ls $ARTIFACT.zip`
BINARY_NAME=`echo "${BIN_NAME%%.zip*}"`


#create cluster zip files
rm -rf temp
unzip $BINARY_NAME.zip -d temp
cd temp
mkdir javase
mkdir javase/netbeans
mkdir javaee
mkdir javaee/netbeans
mkdir webcommon
mkdir webcommon/netbeans
mkdir php
mkdir php/netbeans
mkdir extide
mkdir extide/netbeans

cd netbeans
#java
mv apisupport ../javase/netbeans
mv ergonomics ../javase/netbeans
mv java ../javase/netbeans
mv javafx ../javase/netbeans
mv profiler ../javase/netbeans

#

bash -x $NB_ALL/nbbuild/newbuild/build-nbi.sh

Installers will be generated under dist/bundles

Windows installer exe can be signed using Code signing gui, link is above.

Mac OSX installer(Same script as above, only difference BUILD_MAC=1)

Code Block
BASE_DIR=`pwd`
NB_ALL=$BASE_DIR
export BASE_DIR NB_ALL
  
DIST=$BASE_DIR/dist
export DIST
  
if [ -d $DIST ] ; then
rm -rf $DIST
fi
  
mkdir -p $DIST/zip/moduleclusters
mkdir -p $DIST/logs
  
#BINARY_PATH=https://dist.apache.org/repos/dist/dev/incubator/netbeans/incubating-netbeans/incubating-11.0-vc4/
ARTIFACT=netbeans-*-bin
BIN_NAME=`ls $ARTIFACT.zip`
BINARY_NAME=`echo "${BIN_NAME%%.zip*}"`
export BINARY_NAME
##########
rm -rf temp
mkdir -p temp
unzip $BINARY_NAME.zip -d temp
cd temp
mkdir javase
mkdir javase/netbeans
mkdir javaee
mkdir javaee/netbeans
mkdir webcommon
mkdir webcommon/netbeans
mkdir php
mkdir php/netbeans
mkdir extide
mkdir extide/netbeans
 
cd netbeans
#java
mv apisupport ../javase/netbeans
mv ergonomics ../javase/netbeans
mv java ../javase/netbeans
mv javafx ../javase/netbeans
mv profiler ../javase/netbeans
 
#javaee
mv enterprise ../javaee/netbeans
mv groovy ../javaee/netbeans
 
#webcommon
mv webcommon ../webcommon/netbeans
 
#php
mv php ../php/netbeans
 
#websvccommon
mv websvccommon ../extide/netbeans
 
#create cluster zip files
cd ..
 
echo `pwd`
echo $BINARY_NAME
zip -r $BINARY_NAME-base.zip netbeans
cpmv $BINARY_NAME-base.zip ..
 
echo `pwd`
 
cd javase
zip -r $BINARY_NAME-java.zip netbeans
cpmv $BINARY_NAME-java.zip ../..
cd ..

cd javaee
zip -r $BINARY_NAME-enterprise.zip netbeans
cpmv $BINARY_NAME-enterprise.zip ../..
cd ..

cd php
zip -r $BINARY_NAME-php.zip netbeans
cpmv $BINARY_NAME-php.zip ../..
cd ..

cd webcommon
zip -r $BINARY_NAME-webcommon.zip netbeans
cpmv $BINARY_NAME-webcommon.zip ../..
cd ..

cd extide
zip -r $BINARY_NAME-websvccommon.zip netbeans
cpmv $BINARY_NAME-websvccommon.zip ../..
cd ../..

rm -rf temp
##########
cpmv $BINARY_NAME-*.zip $DIST/zip/moduleclusters

export 
rm -rf NBI-cacheBINARY_NAME

cd $BASE_DIR
#NB_BUILD_NUMBER=<YYMMDD>
NB_BUILD_NUMBER=1209200224
BUILDNUMBER=$NB_BUILD_NUMBER
DATESTAMP=$BUILDNUMBER
NB_VER_NUMBER=11.23
BASENAME_PREFIX=Apache-NetBeans-$NB_VER_NUMBER-bin
BUILD_DESC=$BASENAME_PREFIX
export NB_VER_NUMBER BUILDNUMBER BASENAME_PREFIX NB_BUILD_NUMBER DATESTAMP BUILD_DESC
#export BUILDNUMBER BASENAME_PREFIX NB_BUILD_NUMBER DATESTAMP BUILD_DESC
 
#To build MAC installer on mac host set BUILD_MAC to 1
BUILD_MAC=1
export BUILD_MAC_PATH=$DIST
#export MAC_PATH

MAC_SIGNLOG_IDENTITY_NAMENEW=$DIST/Users/aksinsin/Documents/mac-installer-sign/certificate.txtlogs/native_mac-$BUILDNUMBER.log
export MAC_SIGN_IDENTITY_NAME
 LOG_NEW
BUILD_NB=01
BUILD_NETBEANS=0
BUILD_NBJDK6=0
BUILD_NBJDK7=0
BUILD_NBJDK8=0
BUILD_NBJDK11=0
  
export BUILD_NETBEANS BUILD_NB
export BUILD_NBJDK6 BUILD_NBJDK7 BUILD_NBJDK8 BUILD_NBJDK11
BUNDLE_JDK_PLATFORM=
  export BUNDLE_JDK_PLATFORM

OUTPUT_DIR=${NB_ALL}/dist/installers
export OUTPUT_DIR
  
DONT_SIGN_INSTALLER=y
export DONT_SIGN_INSTALLER
  
bash -x $NB_ALL/nbbuild/newbuild/build-nbi.sh

Note: If one is installing mac installer from the same machine where the dmg was build, then run below command for cleanup before launching installer
sudo rm -rf netbeans/nbbuild/installer/mac/newbuild/netBeans/nbide/build

The signed installer will get generated under dist/bundles.


Windows installer exe can be signed using Code signing gui, link is above.

Mac OSX installer

macOS Installer Build StepsNote: 

Reference

http://wiki.netbeans.org/Launchers_Installers_NBI

...