Tôi có một hồ sơ trong pom.xml của mình, hồ sơ này sẽ luôn hoạt động trừ khi nó bị hủy kích hoạt rõ ràng (-P! FirstProfile). Tôi đã giải quyết vấn đề này bằng cách sử dụng cờ activeByDefault:
<profiles>
<profile>
<id>firstProfile</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
...
</profile>
</profiles>
Bây giờ trong cùng một pom.xml, tôi có một cấu hình thứ hai được xác định, cấu hình này chỉ hoạt động nếu cấu hình thực sự được kích hoạt (-P secondProfile). Vì vậy, hành vi mặc định là: firstProfile hoạt động, secondProfile không hoạt động. Tại một số điểm khác, tôi muốn kích hoạt cấu hình thứ hai ngoài cấu hình đầu tiên. Bây giờ vấn đề là nếu tôi làm điều đó với "-P secondProfile" thì firstProfile không may bị vô hiệu hóa. Tài liệu Maven cho biết điều này:
... Cấu hình này sẽ tự động hoạt động cho tất cả các bản dựng trừ khi một cấu hình khác trong cùng một POM được kích hoạt bằng một trong các phương pháp được mô tả trước đó. Tất cả các cấu hình đang hoạt động theo mặc định sẽ tự động vô hiệu hóa khi một cấu hình trong POM được kích hoạt trên dòng lệnh hoặc thông qua cấu hình kích hoạt của nó. ...
Có cách nào đó có khả năng làm thế nào để giữ cho firstProfile luôn hoạt động (mà không cần phải khai báo nó trong settings.xml) không?