На днях я скачал и установил бесплатную версию JFrog Artifactory с открытым исходным кодом версии 6.10.0.Используя пользовательский интерфейс Artifactory, я смог настроить локальные, удаленные и виртуальные репозитории для проектов Maven по мере необходимости, чтобы хранить сборки на артефакте и использовать его для получения зависимостей Maven.В частности, я настроил их, выбрав Maven при первом открытии пользовательского интерфейса, и он спросил о настройке репозиториев.
Я запускаю артефакт как службу в Windows 10. В случае, если это имеет значение, я скажу, чтоВ то время, когда я впервые установил его, я получал 401 Несанкционированные ошибки, когда запускал цель maven "развертывание" из Eclipse.Я использовал проект с соответствующими записями в файле pom.xml, и у меня был соответствующий файл settings.xml в моей папке .m2.Ошибка 401 произошла, хотя мой файл settings.xml был создан с учетными данными администратора.Я работал над изменением разрешений в артефактном пользовательском интерфейсе, в конечном итоге решая проблему после предоставления пользователю «административного доступа» всех разрешений.Чтобы было ясно, все работало нормально в этот момент.Зависимости загружались из репозиториев прокси, и артефакты сохранялись в артефакте, когда я запускал цель «развертывания» из Eclipse.
Теперь, когда я запускаю Artifactory, я вижу типичную анимацию запуска, сопровождаемую экраном, на которомпоказывает:
{
"errors" : [ {
"status" : 500,
"message" : "Artifactory failed to initialize: check Artifactory logs for errors."
} ]
}
РЕДАКТИРОВАТЬ: Для пояснения я добавлю, что экран, показывающий вышеупомянутое сообщение об ошибке JSON, это единственное, что я вижу на экране, когда я иду к http://localhost:8081/artifactory/webapp и ждузапустить анимацию до конца.Приложение полностью непригодно для использования, потому что оно просто показывает вышеуказанный JSON и остается на экране, показывающем его.Это главная проблема, с которой я сталкиваюсь.
После проверки журналов артефактов после раздела дампа системной информации я вижу следующее:
2019-05-23 12:07:50,487 [art-init] [INFO ] (o.j.c.w.ConfigurationManagerImpl:445) - Replacing temporary DB channel with permanent DB channel
2019-05-23 12:07:50,488 [art-init] [INFO ] (o.j.c.w.ConfigurationManagerImpl:445) - Successfully closed temporary DB channel
2019-05-23 12:07:50,488 [art-init] [INFO ] (o.a.s.ArtifactoryApplicationContext:505) - Artifactory application context set to READY by refresh
2019-05-23 12:07:50,632 [art-init] [INFO ] (o.a.s.a.AccessServiceImpl:1529) - Successful register of Artifactory serviceId jfrt@01db44pt153v8z1j4eqnm60qxr in Access Federation
2019-05-23 12:07:50,710 [art-init] [ERROR] (o.a.w.s.ArtifactoryContextConfigListener:96) - Application could not be initialized: No content to map due to end-of-input
at [Source: (byte[])""; line: 1, column: 0]
java.lang.reflect.InvocationTargetException: null
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.artifactory.webapp.servlet.ArtifactoryContextConfigListener.configure(ArtifactoryContextConfigListener.java:211)
at org.artifactory.webapp.servlet.ArtifactoryContextConfigListener.access$200(ArtifactoryContextConfigListener.java:67)
at org.artifactory.webapp.servlet.ArtifactoryContextConfigListener$1.run(ArtifactoryContextConfigListener.java:92)
Caused by: org.jfrog.common.JsonParsingException: com.fasterxml.jackson.databind.exc.MismatchedInputException: No content to map due to end-of-input
at [Source: (byte[])""; line: 1, column: 0]
at org.jfrog.common.MapperUtilsBase.unchecked(MapperUtilsBase.java:233)
at org.jfrog.common.MapperUtilsBase.readValue(MapperUtilsBase.java:203)
at org.jfrog.common.JsonUtils.readValue(JsonUtils.java:27)
at org.artifactory.storage.db.migration.service.MigrationStatusStorageServiceImpl.findMigrationByIdWithInfoBlob(MigrationStatusStorageServiceImpl.java:56)
at org.artifactory.metadata.service.MetadataMigrationHelper.getMigrationStatus(MetadataMigrationHelper.java:194)
at org.artifactory.metadata.service.MetadataMigrationHelper.shouldMigrate(MetadataMigrationHelper.java:65)
at org.artifactory.metadata.service.MetadataMigrationHelper.migrateOrStartEventPipe(MetadataMigrationHelper.java:52)
at org.artifactory.metadata.service.MetadataEventServiceImpl.onContextCreated(MetadataEventServiceImpl.java:121)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:201)
at com.sun.proxy.$Proxy220.onContextCreated(Unknown Source)
at org.artifactory.spring.ArtifactoryApplicationContext.contextCreated(ArtifactoryApplicationContext.java:285)
at org.artifactory.spring.ArtifactoryApplicationContext.<init>(ArtifactoryApplicationContext.java:146)
... 7 common frames omitted
Caused by: com.fasterxml.jackson.databind.exc.MismatchedInputException: No content to map due to end-of-input
at [Source: (byte[])""; line: 1, column: 0]
at com.fasterxml.jackson.databind.exc.MismatchedInputException.from(MismatchedInputException.java:59)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4133)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3988)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3079)
at org.jfrog.common.MapperUtilsBase.lambda$readValue$14(MapperUtilsBase.java:203)
at org.jfrog.common.MapperUtilsBase.unchecked(MapperUtilsBase.java:231)
... 23 common frames omitted
Любая помощь по этому вопросу будет принята с благодарностью.,Я не уверен, наткнулся ли я на ошибку Artifactory, или я каким-то образом сломал приложение, когда создавал репозитории, использовал artifactory для хранения / извлечения зависимостей или там хранились мои артефакты.
Если этоимеет значение, вот выдержка из моего файла pom.xml (с измененным полем имени, чтобы избежать любой возможной проблемы безопасности.)
<distributionManagement>
<repository>
<id>central</id>
<name>my_computer-releases</name>
<url>http://localhost:8081/artifactory/libs-release-local</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>my_computer-snapshots</name>
<url>http://localhost:8081/artifactory/libs-snapshot-local</url>
</snapshotRepository>
</distributionManagement>
Вот мой файл settings.xml (с измененной информацией о зашифрованном пароле)
<?xml version="1.0" encoding="UTF-8"?>
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<servers>
<server>
<username>${security.getCurrentUsername()}</username>
<password>${security.getEscapedEncryptedPassword()!"[EncryptedPasswordHere]"}</password>
<id>central</id>
</server>
<server>
<username>${security.getCurrentUsername()}</username>
<password>${security.getEscapedEncryptedPassword()!"[EncryptedPasswordHere]"}</password>
<id>snapshots</id>
</server>
</servers>
<profiles>
<profile>
<repositories>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>libs-release</name>
<url>http://localhost:8081/artifactory/libs-release</url>
</repository>
<repository>
<snapshots />
<id>snapshots</id>
<name>libs-snapshot</name>
<url>http://localhost:8081/artifactory/libs-snapshot</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>libs-release</name>
<url>http://localhost:8081/artifactory/libs-release</url>
</pluginRepository>
<pluginRepository>
<snapshots />
<id>snapshots</id>
<name>libs-snapshot</name>
<url>http://localhost:8081/artifactory/libs-snapshot</url>
</pluginRepository>
</pluginRepositories>
<id>artifactory</id>
</profile>
</profiles>
<activeProfiles>
<activeProfile>artifactory</activeProfile>
</activeProfiles>
</settings>