MacOS下Eclipse如何通过AWS CLI执行结果设置环境变量(用于AWS CodeArtifact令牌)
解决Eclipse M2E中动态加载AWS CodeArtifact令牌的问题
针对Eclipse M2E无法复用终端mavenrc脚本动态设置CodeArtifact令牌的问题,提供以下三种可行方案:
方案一:Eclipse外部工具+Maven构建依赖(无需修改项目)
这种方式让Maven构建前自动执行令牌更新脚本,无需重启IDE:
- 打开Run → External Tools → External Tools Configurations,新建一个
Program配置:- 名称:
Refresh CodeArtifact Token - 位置:填shell路径(Mac/Linux用
/bin/bash,Windows用cmd.exe) - 参数:执行令牌获取命令并导出环境变量,示例(Mac/Linux):
-c "export CODEARTIFACT_TOKEN=$(aws codeartifact get-authorization-token --domain 你的域名 --domain-owner 你的账号ID --query authorizationToken --output text); echo '令牌已更新'" - 切换到Environment标签,确保AWS凭证相关变量(如
AWS_ACCESS_KEY_ID)已配置,或脚本能读取本地AWS凭证文件
- 名称:
- 打开目标Maven构建配置(Run → Run Configurations → Maven Build):
- 切换到Build标签,点击
Add...选择刚才创建的外部工具,设置为Before Launch的前置任务 - 切换到Environment标签,确认
CODEARTIFACT_TOKEN会被Maven进程继承
- 切换到Build标签,点击
- 后续运行该Maven配置时,会自动先更新令牌再执行构建
方案二:在项目pom.xml中集成令牌获取(跨IDE通用)
直接在Maven构建生命周期中自动获取令牌,无需依赖IDE配置:
- 在项目pom.xml的
<build><plugins>中添加exec插件配置,在初始化阶段获取令牌并设为Maven属性:<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <id>get-codeartifact-token</id> <phase>initialize</phase> <goals> <goal>exec</goal> </goals> <configuration> <executable>aws</executable> <arguments> <argument>codeartifact</argument> <argument>get-authorization-token</argument> <argument>--domain</argument> <argument>你的域名</argument> <argument>--domain-owner</argument> <argument>你的账号ID</argument> <argument>--query</argument> <argument>authorizationToken</argument> <argument>--output</argument> <argument>text</argument> </arguments> <outputProperty>codeartifact.token</outputProperty> </configuration> </execution> </executions> </plugin> - 在settings.xml或项目pom.xml的
<servers>中引用该属性作为仓库密码:<server> <id>codeartifact-repo</id> <username>aws</username> <password>${codeartifact.token}</password> </server> - 后续无论在Eclipse还是终端执行Maven构建,都会自动在初始化阶段更新令牌
方案三:修改Maven运行时配置加载自定义mavenrc
让Eclipse的Maven实例读取终端的mavenrc脚本,仅需一次重启IDE:
1.</think_never_used_51bce0c785ca2f68081bfa7d91973934>
相关产品推荐
相关产品推荐

