404 error when running Jira plugin locally after updating Java SDK version

I have a Jira plugin I created. I recently updated my Java SDK to Oracle SDK 23 and am now getting a 404 error when I try to load http://localhost:2990/jira/.

Here is the text of the error page I get in the browser:

HTTP Status 404 – Not Found
Type Status Report

Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

Apache Tomcat/9.0.84

And here are the log messages:

[INFO] [talledLocalContainer] Dec 12, 2024 11:07:31 AM org.apache.catalina.startup.Catalina start
[INFO] [talledLocalContainer] INFO: Server startup in [205209] milliseconds
[INFO] [talledLocalContainer] Tomcat 9.x started on port [2990]
[INFO] jira started successfully in 283s at http://localhost:2990/jira
[INFO] Type Ctrl-C to shutdown gracefully
[INFO] [talledLocalContainer] Dec 12, 2024 11:12:05 AM org.apache.catalina.loader.WebappClassLoaderBase checkStateForResourceLoading
[INFO] [talledLocalContainer] INFO: Illegal access: this web application instance has been stopped already. Could not load [com.google.gson.GsonBuilder]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
[INFO] [talledLocalContainer] java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [com.google.gson.GsonBuilder]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1349)
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1337)
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1174)
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1141)
[INFO] [talledLocalContainer]   at com.atlassian.jira.util.stats.GsonStatsSerializer.buildGson(GsonStatsSerializer.java:43)
[INFO] [talledLocalContainer]   at com.atlassian.jira.util.stats.GsonStatsSerializer.serialize(GsonStatsSerializer.java:25)
[INFO] [talledLocalContainer]   at com.atlassian.jira.util.stats.JiraStats.log(JiraStats.java:468)
[INFO] [talledLocalContainer]   at com.atlassian.jira.util.stats.JiraStats.printAndReset(JiraStats.java:418)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[INFO] [talledLocalContainer]   at java.base/java.lang.Thread.run(Thread.java:1575)
[INFO] [talledLocalContainer]
[INFO] [talledLocalContainer] Dec 12, 2024 11:12:09 AM org.apache.catalina.loader.WebappClassLoaderBase checkStateForResourceLoading
[INFO] [talledLocalContainer] INFO: Illegal access: this web application instance has been stopped already. Could not load [com.atlassian.jira.util.stats.LongStats]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
[INFO] [talledLocalContainer] java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [com.atlassian.jira.util.stats.LongStats]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1349)
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1337)
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1174)
[INFO] [talledLocalContainer]   at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1141)
[INFO] [talledLocalContainer]   at com.atlassian.jira.util.stats.MutableLongStats.get(MutableLongStats.java:58)
[INFO] [talledLocalContainer]   at com.atlassian.jira.mention.stats.data.UserSearchServiceStatsData.getTotalMeasuredOperationsForStatsOverheadInMillis(UserSearchServiceStatsData.java:34)
[INFO] [talledLocalContainer]   at com.atlassian.jira.util.stats.JiraStats.log(JiraStats.java:456)
[INFO] [talledLocalContainer]   at com.atlassian.jira.util.stats.JiraStats.printAndReset(JiraStats.java:418)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[INFO] [talledLocalContainer]   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[INFO] [talledLocalContainer]   at java.base/java.lang.Thread.run(Thread.java:1575)
[INFO] [talledLocalContainer] 

I think (but am not sure) that it’s related to Illegal access: this web application instance has been stopped already. Could not load [com.google.gson.GsonBuilder]. However, I haven’t been able to find much on what this actually means. The closest I’ve been able to find is this, which is about a different error message with the same dependency (but doesn’t seem to apply to my case).

In this case, someone was able to resolve a similar issue by shutting down their server and starting it over, but that didn’t work for me.

I saw similar issues here and here on the Atlassian developer forum, but there was no answer to either post.

I already tried running atlas-clean and deleting the C:UsersMyUser.m2repository folders, but neither helped.

I also checked java -version, and everything seems normal there:

java version "23.0.1" 2024-10-15
Java(TM) SE Runtime Environment (build 23.0.1+11-39)
Java HotSpot(TM) 64-Bit Server VM (build 23.0.1+11-39, mixed mode, sharing)

atlas-version seemed ok too:

ATLAS Version:    8.2.7
ATLAS Home:       C:ApplicationsAtlassianatlassian-plugin-sdk-8.2.7
ATLAS Scripts:    C:ApplicationsAtlassianatlassian-plugin-sdk-8.2.7bin
ATLAS Maven Home: C:ApplicationsAtlassianatlassian-plugin-sdk-8.2.7apache-maven-3.5.4
AMPS Version:     8.1.2
--------
Executing: "C:ApplicationsAtlassianatlassian-plugin-sdk-8.2.7apache-maven-3.5.4binmvn.cmd" --version -gs C:ApplicationsAtlassianatlassian-plugin-sdk-8.2.7apache-maven-3.5.4/conf/settings.xml
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T13:33:14-05:00)
Maven home: C:ApplicationsAtlassianatlassian-plugin-sdk-8.2.7apache-maven-3.5.4bin..
Java version: 23.0.1, vendor: Oracle Corporation, runtime: C:Program FilesJavajdk-23
Default locale: en_US, platform encoding: UTF-8
OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"

Can someone point me in the right direction?

2

Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa Dịch vụ tổ chức sự kiện 5 sao Thông tin về chúng tôi Dịch vụ sinh nhật bé trai Dịch vụ sinh nhật bé gái Sự kiện trọn gói Các tiết mục giải trí Dịch vụ bổ trợ Tiệc cưới sang trọng Dịch vụ khai trương Tư vấn tổ chức sự kiện Hình ảnh sự kiện Cập nhật tin tức Liên hệ ngay Thuê chú hề chuyên nghiệp Tiệc tất niên cho công ty Trang trí tiệc cuối năm Tiệc tất niên độc đáo Sinh nhật bé Hải Đăng Sinh nhật đáng yêu bé Khánh Vân Sinh nhật sang trọng Bích Ngân Tiệc sinh nhật bé Thanh Trang Dịch vụ ông già Noel Xiếc thú vui nhộn Biểu diễn xiếc quay đĩa Dịch vụ tổ chức tiệc uy tín Khám phá dịch vụ của chúng tôi Tiệc sinh nhật cho bé trai Trang trí tiệc cho bé gái Gói sự kiện chuyên nghiệp Chương trình giải trí hấp dẫn Dịch vụ hỗ trợ sự kiện Trang trí tiệc cưới đẹp Khởi đầu thành công với khai trương Chuyên gia tư vấn sự kiện Xem ảnh các sự kiện đẹp Tin mới về sự kiện Kết nối với đội ngũ chuyên gia Chú hề vui nhộn cho tiệc sinh nhật Ý tưởng tiệc cuối năm Tất niên độc đáo Trang trí tiệc hiện đại Tổ chức sinh nhật cho Hải Đăng Sinh nhật độc quyền Khánh Vân Phong cách tiệc Bích Ngân Trang trí tiệc bé Thanh Trang Thuê dịch vụ ông già Noel chuyên nghiệp Xem xiếc khỉ đặc sắc Xiếc quay đĩa thú vị
Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa
Thiết kế website Thiết kế website Thiết kế website Cách kháng tài khoản quảng cáo Mua bán Fanpage Facebook Dịch vụ SEO Tổ chức sinh nhật