设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5003|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * E0 _" T2 G% a, v  x$ Q9 K

( R- Z/ d; t! B& e! v" Z/ T9 s本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( F+ K/ ]! g( e$ u1 y, N# z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 Q, X: f, H  t" z0 o& K2 [swarm.SignatureNotFoundException  j. {7 k2 b" p- |& q; F# t( l' p0 V- r
        at swarm.Selector.<init>(Selector.java:76)5 {# m, s4 }6 F! y5 z7 `5 N! H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 Y/ Q3 n  T, s* ?        at ActionGroupDemo.main(ActionGroupDemo.java:67)) F( J8 r0 E6 L, ]7 g$ ]

) ^/ j, s( I! D0 Y- z, n# G" E9 j6 ~8 ]. b
import swarm.objectbase.SwarmImpl;
& ^: l' h; L1 R, Wimport swarm.objectbase.Swarm;& R: w6 Y0 E$ u: s
import swarm.activity.ScheduleImpl;
0 r  N+ s3 e" t' {! d8 l/ Timport swarm.activity.Activity;
8 V1 y* j* ?8 k5 P8 Q; R% _4 ~import swarm.activity.ActionGroupImpl;
9 I; v* z, E" X) G9 o% q& ]) x6 Zimport swarm.collections.ListImpl;
5 l8 j- T8 e! k5 y0 W3 _import swarm.defobj.Zone;
8 |* ^* _# f- x$ |1 d' t7 simport swarm.Globals;
) Y* g6 z7 H5 U; h5 T& Bimport swarm.Selector;- j$ S! `8 n# T3 ]* y
import swarm.activity.ActionGroup; ! m/ @' [- F+ G& s$ D( u& d
class Agent {
: H# u- e* ]6 ~) d        char id;  ]4 t- i. e3 f! E' R
2 J+ L: ?: g7 U' \
        Agent(char id) {
3 C! O& i- ^* X. N( H5 l                this.id = id;
! _- R+ G! f3 p% ]9 a        }9 N. Q3 X4 D3 B. j! Y

- a* l9 S3 o) ~/ ?/ |! r) X. Y        public void agentStep() {
& z4 [' Q2 e/ i* i                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 c  h" {' ?/ L* J! G        }$ {7 B8 o' X6 c/ o/ c9 J) [  f
}* ~6 c  b. l2 [! Z6 J7 R4 v3 l
, N- o. P0 R5 ]" V
public class ActionGroupDemo extends SwarmImpl {6 A4 ]# w" u/ X, j) Q( s8 \1 L
        ScheduleImpl schedule;% C. t7 A0 w+ {% Q
        ActionGroupImpl actionGroup;7 K4 o+ Q. G+ L! _- b! g
        ListImpl list;
' b/ U2 S3 t! w        char Id = 'a';
  d& {; ~. l8 i" t) _. Z+ S" T% |, i: m0 u2 f9 o) x% p
        ActionGroupDemo(Zone aZone) {
) r$ x8 v# B: U! U4 X! K                super(aZone);
1 @) i& z7 [! [1 q                list = new ListImpl(aZone);$ }5 w, m% @0 N/ a2 @+ i
                swarmSetp();
" [3 h/ Q: J* h  _                actionGroup = new ActionGroupImpl(aZone);
: B: m6 ]- x2 l! _0 {, K                schedule = new ScheduleImpl(aZone);2 b; e5 C* s1 `  x- `4 j1 T
                try {
8 d1 F; r, b0 J) W- C  O1 S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 h/ L- l. s9 C1 f
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 d+ |3 s/ @1 R6 e* r! n# S9 b                        . A$ b, O( h) C# `- n% z
                        actionGroup.createActionForEach$message(list, agentSel);& t; D/ X' W0 c* _) T8 \- Q
                        actionGroup.createActionTo$message(this, swarmSel);) C' t5 v1 p2 `& e* c7 d
                        schedule.at$createAction(0, actionGroup);  |6 {( ?  W+ e
                        schedule.at$createAction(1, actionGroup);% g7 M7 T% R" y
                        schedule.at$createAction(2, actionGroup);/ ?* R7 |) M4 S6 E  |& D6 t1 S: ]
/ r  F) H" h$ n- X% d
                } catch (Exception e) {
7 D; y7 Z* K" }2 ~                        e.printStackTrace(System.err);( i3 T; T8 k' @2 a; r! g. L4 \! r9 y
                        //System.out.println(e);
: x6 e5 ~! X; N+ h( S                        System.exit(1);
8 I  q  d0 J( r0 ~                }
" P& t0 }: F7 C( i% g
7 h( W! u/ h; I+ k3 H, d8 l+ W6 h4 C6 t; ^2 O" u' H7 b
        }* }# q" `5 ?3 Q/ k3 A9 ^
4 I0 q4 t  v  A* h, O" }' j1 I- J
        private void swarmSetp() {! o% n& G) }8 V1 t
                list.addLast(new Agent(Id));
/ f+ U( r: `8 g8 w                Id++;
5 d' c% a" ?) l8 g8 E: ^* c        }( x8 B6 |7 X% Y7 _/ e# _
* b4 k) ?. [. y6 d& u4 ]4 o
        public Activity activateIn(Swarm context) {
: t4 ?" H5 `1 k2 f( }. Y                super.activateIn(context);$ g, G* A  W, h0 s
                schedule.activateIn(this);( A7 G! P. e# `: W+ m
                return getActivity();2 i+ a# i2 Y/ |( s$ X" X* h
        }; g$ U4 |7 ^# L8 k
9 C5 z. D& ^. _# n  F  _0 e
        public static void main(String[] args) {
. O; v/ X7 b# \3 `0 U2 x- p8 q5 T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 \% ]/ `7 ^- x! B" U1 P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" P; b* h, `- F3 b( I% @                swarms.buildObjects();, d8 \1 p0 V. b) ~) g; u! f8 T
                swarms.buildActions();
5 N3 _5 K& T8 Q. H! ]5 [                swarms.activateIn(null).run();$ @; R* H+ t# x) n* [
        }+ ]- O. ]; J# x* s5 G
2 P1 _, B# O: G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-21 12:28 , Processed in 0.017653 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表