Hi tarun k
As we discussed in private message,
At the top of your BuildPipelinetemplate-dotnet.txt
, add this for JDK selection:
- name: jdk_version
type: string
default: '17'
values:
- '8'
- '11'
- '17'
- '21'
then replace JavaToolInstaller@0
with a Dynamic Script
Remove this task:
then Insert this:
- script: |
echo "Setting JAVA_HOME for JDK version: ${{ parameters.jdk_version }}"
case "${{ parameters.jdk_version }}" in
'8')
echo "##vso[task.setvariable variable=JAVA_HOME]/usr/lib/jvm/java-8-openjdk-amd64"
;;
'11')
echo "##vso[task.setvariable variable=JAVA_HOME]/usr/lib/jvm/java-11-openjdk-amd64"
;;
'17')
echo "##vso[task.setvariable variable=JAVA_HOME]/usr/lib/jvm/java-17-openjdk-amd64"
;;
'21')
echo "##vso[task.setvariable variable=JAVA_HOME]/usr/lib/jvm/java-21-openjdk-amd64"
;;
esac
displayName: 'Set JAVA_HOME based on jdk_version'
shell: bash
In your main pipeline, pass the desired JDK version like this:
- template: /DevOps/templates/Build/NET Core/build-pipeline-template.yml@JDK
parameters:
...
jdk_version: 'jdk17'
Hope this helps!
Please Let me know if you have any queries.