ঠিক তাই অন্যরা যারা আমার অ্যাপ্লিকেশনগুলিকে আমার মতো কনফিগার করেছে তারা যা করেছে তা থেকে আমার উপকার হয় ...
আমার জন্য কাজ, কারণ আমি একটি আছে উপরে সমাধান কোনটি ./config
: শুধু 2 ফাইলগুলির সাথে আমার প্রকল্প বেস অধীনে ডিরেক্টরির
application.properties
application-dev.properties
মধ্যে application.properties
আমি আছে:
spring.profiles.active = dev # set my default profile to 'dev'
ইন application-dev.properties
আমার আছে:
server_host = localhost
server_port = 8080
এটি তাই যখন আমি সিএলআই থেকে আমার ফ্যাট জারের চালনা করি তখন *.properties
ফাইলগুলি পড়তে হবে./config
দির এবং সব ভাল।
ঠিক আছে, দেখা যাচ্ছে যে এই বৈশিষ্ট্যগুলি ফাইলগুলি আমার স্পক চশমাগুলিতে webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT
সেটিংটি পুরোপুরি ওভাররাইড করে @SpringBootTest
। আমি যা চেষ্টা করেছি তা বিবেচনা করেই webEnvironment
, RANDOM_PORT
স্প্রিং-এ সেট করেও 8080 পোর্টে এম্বেড করা টমক্যাট ধারক সর্বদা শুরু হবে (বা আমি যে ./config/*.properties
ফাইলগুলির মধ্যে সেট করব সে মানটি )।
কেবলমাত্র আমি পরাস্ত করার জন্য এই একটি সুনির্দিষ্ট যোগ করে ছিল পেরেছিলেন properties = "server_port=0"
করতে @SpringBootTest
আমার Spock ইন্টিগ্রেশন চশমা মধ্যে টীকা:
@SpringBootTest (webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, properties = "server_port=0")
তারপরে এবং তারপরেই স্প্রিং অবশেষে একটি এলোমেলো বন্দরে টমক্যাট স্পিন করা শুরু করেছিল। আইএমএইচও এটি একটি স্প্রিং টেস্টিং ফ্রেমওয়ার্ক বাগ, তবে আমি নিশ্চিত যে এ সম্পর্কে তাদের নিজস্ব মতামত থাকবে।
আশা করি এটি কারও সাহায্য করেছে।