Maven: Difference between revisions
Jump to navigation
Jump to search
Line 116: | Line 116: | ||
* [https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html Maven Deploy Optional Parameters] | * [https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html Maven Deploy Optional Parameters] | ||
* [https://maven.apache.org/guides/mini/guide-encryption.html Maven Encrypt Master Password] | * [https://maven.apache.org/guides/mini/guide-encryption.html Maven Encrypt Master Password] | ||
* [[Maven Deploy External JAR]] | |||
* [https://stackoverflow.com/questions/23929235/ Bash Multi-line string] | * [https://stackoverflow.com/questions/23929235/ Bash Multi-line string] | ||
* [[Nexus:Maven]] | * [[Nexus:Maven]] | ||
* [[Nexus]] | * [[Nexus]] | ||
| valign="top" | | | valign="top" | | ||
* [[Maven Checkstyle Plugin]] | * [[Maven Checkstyle Plugin]] | ||
Line 128: | Line 127: | ||
| valign="top" | | | valign="top" | | ||
|- | |||
| colspan="3" | | |||
---- | |||
|- | |||
| valign="top" | | |||
* [[CocoaPods]] | |||
* [[Conan]] | |||
* [[Bazel]] | |||
* [[NPM]] | |||
* [[Ant]] | |||
* [[Ivy]] | |||
| valign="top" | | |||
| valign="top" | | |||
|} | |} |
Revision as of 20:57, 18 January 2024
<profile>
<id>ext</id>
<activation>
<file>
<missing>${basedir}/ext</missing>
</file>
</activation>
</profile>
Distribution
<settings>
[...]
<profiles>
<profile>
<id>nex</id>
<properties>
<altSnapshotDeploymentRepository>academia.snapshots::default::https://nex.chorke.org/repository/maven/snapshots</altSnapshotDeploymentRepository>
<altReleaseDeploymentRepository>academia.releases::default::https://nex.chorke.org/repository/maven/releases</altReleaseDeploymentRepository>
</properties>
</profile>
</profiles>
</settings>
Security
M2_MASTER_PASS='<master.password>';\
M2_SECURITY_XML="${HOME}/.m2/settings-security.xml";\
printf -v M2_MASTER_HASH '%s' $(mvn --encrypt-master-password ${M2_MASTER_PASS});\
if [ ! -f ${M2_SECURITY_XML} ]||[ ! -s ${M2_SECURITY_XML} ];then\
cat << EOF | tee ${M2_SECURITY_XML} >/dev/null
<?xml version="1.0" encoding="UTF-8"?>
<settingsSecurity>
<master>${M2_MASTER_HASH}</master>
</settingsSecurity>
EOF
fi
M2_NEXUS_USER='<nexus.username>';\
M2_NEXUS_PASS='<nexus.password>';\
M2_SETTINGS_XML="${HOME}/.m2/settings.xml";\
printf -v M2_NEXUS_HASH '%s' $(mvn --encrypt-password ${M2_NEXUS_PASS});\
if [ ! -f ${M2_SETTINGS_XML} ]||[ ! -s ${M2_SETTINGS_XML} ];then\
cat << EOF | tee ${M2_SETTINGS_XML} >/dev/null
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">
<servers>
<server>
<id>academia.releases</id>
<username>${M2_NEXUS_USER}</username>
<password>${M2_NEXUS_HASH}</password>
</server>
<server>
<id>academia.snapshots</id>
<username>${M2_NEXUS_USER}</username>
<password>${M2_NEXUS_HASH}</password>
</server>
</servers>
<mirrors>
<mirror>
<id>academia</id>
<mirrorOf>*</mirrorOf>
<url>https://cdn.chorke.org/nexus/repository/m2/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>academia</id>
<properties>
<altSnapshotDeploymentRepository>academia.snapshots::default::https://cdn.chorke.org/nexus/repository/m2-snapshots</altSnapshotDeploymentRepository>
<altReleaseDeploymentRepository>academia.releases::default::https://cdn.chorke.org/nexus/repository/m2-releases</altReleaseDeploymentRepository>
</properties>
<repositories>
<repository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>academia</activeProfile>
</activeProfiles>
</settings>
EOF
fi