设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10794|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 r, M9 W; o0 Q5 X9 n, O6 K, I

4 |" o# e5 P- m  }% O5 N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 C3 ]5 n+ G6 O  P- h' ?8 L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. s8 N( D4 @* U% A9 j! eswarm.SignatureNotFoundException
8 m3 M; N( z% g        at swarm.Selector.<init>(Selector.java:76)3 O! e3 N. Y8 H: I3 I" L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* ~& W2 K5 H' h5 @& C
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) z/ `, e+ h7 l) u6 G
5 @! f8 ~5 {  R& |5 k
& Y) V; X& I# I4 U
import swarm.objectbase.SwarmImpl;4 ^2 G/ l9 u  D
import swarm.objectbase.Swarm;
0 y) |# I  F  C2 M5 Himport swarm.activity.ScheduleImpl;
4 e- i1 {; [6 [5 }+ n  \import swarm.activity.Activity;
0 j+ m  X6 ?) L* Mimport swarm.activity.ActionGroupImpl;
1 e$ I' S& b& m5 ?! T# ?$ Himport swarm.collections.ListImpl;
: H2 e1 J5 p: J9 Q* bimport swarm.defobj.Zone;
3 l6 A& o/ {: ]2 ?, m+ Oimport swarm.Globals;/ n# h6 q# H: y/ g, _/ _
import swarm.Selector;
; |) u2 @3 |# q0 d8 U' l. Pimport swarm.activity.ActionGroup;
) J/ V, d0 `& L: Y9 C' Mclass Agent {: `# H9 t) S) A  k) Z
        char id;( a" k. X% p0 Y9 }

4 q) M6 R0 H% n& U        Agent(char id) {! a$ D0 E: D# k; h; {' A9 a
                this.id = id;7 q  N8 ?! {. ]) g1 ^0 O: i
        }0 m5 x. ^% Z3 `1 o7 m6 s9 x) I2 a

' H$ E5 _2 ~8 _/ G; b        public void agentStep() {
. Q) V: G: G. ?5 ^6 I                System.out.println(id + ":" + Globals.env.getCurrentTime());6 k' p' e( l4 j; g3 G; v' G" U2 K
        }. |0 o* V6 {  m* |5 _/ I( o3 K, ~
}( j" E. y& S/ Q- @: H
/ B$ x/ ~, v( K" L' D
public class ActionGroupDemo extends SwarmImpl {$ C( p. y" I* R
        ScheduleImpl schedule;
+ e  \2 l( o4 J1 b, W$ Y        ActionGroupImpl actionGroup;
+ _  b! u0 _3 v! N: U        ListImpl list;; V3 I9 g# w% @' G
        char Id = 'a';
) h8 Y6 y3 w5 w4 v% x3 k  v; f9 L7 i8 W' ~* \
        ActionGroupDemo(Zone aZone) {" t( V6 H2 t& u* j
                super(aZone);, J( x# N3 ?% H& N
                list = new ListImpl(aZone);
4 H7 B  |; G, X- L# \                swarmSetp();
4 g4 R0 f$ z# \                actionGroup = new ActionGroupImpl(aZone);5 u! R' A6 o# G* [( ?7 a4 A
                schedule = new ScheduleImpl(aZone);! o8 j  l: W( F
                try {
( k/ Z1 a- E. f, ~; R& @                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 h9 U+ p) U; \: m+ ?                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ `0 j: |% P) |: V* u
                        
/ p: e. `7 `- o- {' `5 D2 V  a                        actionGroup.createActionForEach$message(list, agentSel);0 r8 ]9 v. F& C, i; h3 C
                        actionGroup.createActionTo$message(this, swarmSel);( ^0 Z/ b/ T' `
                        schedule.at$createAction(0, actionGroup);$ x+ n- C: o) E' v( }8 n0 [
                        schedule.at$createAction(1, actionGroup);4 d' V" R+ m- o2 ~; p
                        schedule.at$createAction(2, actionGroup);
8 f% M( \9 X8 u0 N  z; B# f8 l! e  n9 n1 z9 ^  s
                } catch (Exception e) {' v: ^, E# F4 S7 G5 V! G( P
                        e.printStackTrace(System.err);  \( S: F. L' o: ~: j4 H/ t! u
                        //System.out.println(e);
+ ^3 i* r3 y- {                        System.exit(1);
9 C) e' m; G3 ~- c6 W                }, Y8 J( @) z, |) m& K2 z

7 b$ a& V, S% F% o9 P$ w  g8 y9 F3 i1 F# ]+ l% N3 i
        }4 d# K7 C' H/ t! @2 b
% B5 l9 E) E; u) r
        private void swarmSetp() {8 R% r: ?% p! |
                list.addLast(new Agent(Id));
  w! }; ]# I- g- K# Z# A* y  }                Id++;! K% u/ W+ v3 c. f. G
        }1 _. L0 t8 \: G, R4 B
( J: U" `3 K% j5 S( @# O5 @& Z
        public Activity activateIn(Swarm context) {
) L$ l8 Y; ]* L- o                super.activateIn(context);
9 H: w. w+ n: X' E: U& M                schedule.activateIn(this);
! O, }/ m0 s: s, Y) d( W$ W( y                return getActivity();
1 i$ A" ?* G' C) x  X        }
6 z9 s- h; ~: D  l9 x; D7 |( G
. g# f. A! A  m1 c$ s9 ]6 D        public static void main(String[] args) {
! P0 F1 m3 z* h2 I                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; d! s4 Y/ N6 y. z  b3 z2 n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" O  s1 ^3 |" ]& C( Z4 C; D3 `
                swarms.buildObjects();
) R' b0 Q5 H5 B( n& Z                swarms.buildActions();
2 J% a' u0 n% e6 e                swarms.activateIn(null).run();
9 c0 S% D( Q  Y+ w% s+ S) w) b        }8 }, `! S( F' j9 E8 k& `+ `4 a
9 V9 @8 k* V; V8 n; q- T0 e, @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-23 21:45 , Processed in 0.017731 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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