[英]How to fix “com.google.cloud.tools.appengine.AppEngineException: java.nio.file.NoSuchFileException: …\exploded-{project}\WEB-INF\appengine-web.xml”
我正在努力部署到Google App Engine標准環境。 部署之前,我想在本地進行測試,因此我正在運行gradlew appengineRun
。
一切正常,直到出現此錯誤為止:“ com.google.cloud.tools.appengine.AppEngineException:java.nio.file.NoSuchFileException:C:\\ Users {user} \\ StudioProjects {project} \\ build \\ exploded- {project } \\ WEB-INF \\ appengine-web.xml”。
這很奇怪,因為我檢查了項目中的文件結構,並且存在appengine-web.xml。
{project}
...
build
...
exploded-{project}
...
WEB-INF
...
appengine-web
當我可以看到文件確切應有的位置時,我不知道為什么文件“不存在”。
我的appengine-web.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<application>{ID}</application>
<use-google-connector-j>true</use-google-connector-j>
<version>1</version>
<threadsafe>true</threadsafe>
<runtime>java8</runtime>
<system-properties>
<property name="java.util.logging.config.file" value="WEB-INF/classes/logging.properties" />
</system-properties>
<automatic-scaling>
<!-- scaling details -->
</automatic-scaling>
</appengine-web-app>
我確實有一個問題,當我在其上滾動時,名稱空間為紅色,並且我未獲得URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)
。
我試圖通過獲取資源來修復此解決方案,但是沒有成功。 我不知道這可能是問題,但這是我唯一的體面猜測。
我需要識別appengine-web.xml文件才能進行進度。 如果有人知道發生了什么,或有任何想法向正確的方向指點,我們將不勝感激。
TLDR:
具有名稱和您選擇的類型的文件與格式為{file-name}。{type}的文件名之間是有區別的。 如果要識別該文件,請執行后者。
細節
事實證明,在gradle看來,擁有一個名為appengine-web的文件與將其聲明為.xml文件與制作一個名為appengine-web.xml的文件之間存在巨大差異。
我添加了一個新文件,該文件以.xml作為其名稱的一部分,並解決了我之前遇到的問題。
完成此操作后,我遇到了一個相同的問題,即用於記錄屬性的文件(請參閱問題中.xml文件中的system-properties字段)。
我創建了一個名為logging的文件,並將其設置為.properties文件,但找不到該文件。 然后,我制作了一個名為logging.properties的文件,並成功找到了該文件。
講故事的目的,在處理Google App Engine時,在名稱中明確聲明文件類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.