我知道之前已经问过这个答案,但我找不到给定答案的明确解决方案。
我想使用IntelliJ或任何其他IDE调试在tomEE上实现Web服务的maven项目。
我知道我必须致电#!/usr/bin/env python
# encoding: utf-8
"""
Testing iter_block_items()
"""
from __future__ import (
absolute_import, division, print_function, unicode_literals
)
from docx import Document
from docx.document import Document as _Document
from docx.oxml.text.paragraph import CT_P
from docx.oxml.table import CT_Tbl
from docx.table import _Cell, Table
from docx.text.paragraph import Paragraph
def iter_block_items(parent):
"""
Generate a reference to each paragraph and table child within *parent*,
in document order. Each returned value is an instance of either Table or
Paragraph. *parent* would most commonly be a reference to a main
Document object, but also works for a _Cell object, which itself can
contain paragraphs and tables.
"""
if isinstance(parent, _Document):
parent_elm = parent.element.body
# print(parent_elm.xml)
elif isinstance(parent, _Cell):
parent_elm = parent._tc
else:
raise ValueError("something's not right")
for child in parent_elm.iterchildren():
if isinstance(child, CT_P):
yield Paragraph(child, parent)
elif isinstance(child, CT_Tbl):
yield Table(child, parent)
document = Document('test.docx')
for block in iter_block_items(document):
print('found one')
print(block.text if isinstance(block, Paragraph) else '<table>')
而不是调用目标tomee:run
。这就是我所做的:
在IntelliJ中,我点击tomee:debug
然后Run / Edit Configurations
,我选择+
,找到项目目录,然后将Maven
设置为命令行。我开始调试,它说:
在端口上启动服务器进程:8080
在地址:5005
侦听传输dt_socket我认为这第一步是正确的。我理解的第二步是创建一个远程配置,这是我没能做到的。
我做的是以下内容:
tomee:debug
然后Run / Edit Configurations
,然后是+
。我在这里选择TomEE Server
或local
?在我的情况下,我认为本地是因为项目是设备上的本地项目,我使用localhost:8080来调用它。
之后,如何配置此页面?端口号5005或8080是什么?当我完成配置此页面时,我的工作是什么?运行还是调试?
我希望得到一个详细的答案,因为我无法理解其他问题的简短答案。
答案 0 :(得分:1)
以下是解决方案:
第1步:
在IntelliJ中,我单击Run / Edit Configurations
然后+
添加新配置,我选择Maven
,找到项目目录并将tomee:debug
设置为命令行。我开始调试,它说:
Started server process on port: 8080
Listening for transport dt_socket at address: 5005
另一种解决方案可以是在终端中找到项目目录并运行命令:mvn tomee:debug
第2步:在IntelliJ中,我点击Run / Edit Configurations
然后+
添加新配置,我选择了Remote
,并指定{{1}使用端口localhost
。
现在我点击5005
,然后OK
这个配置。
断点是可检测的,调试工作正常。