设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11164|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! {7 T% `" H, j3 E* T# R# j! L$ G8 k  V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: o3 X0 R, s; T3 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." l+ H2 U7 K; R' e) R& \  `' n7 X3 W
swarm.SignatureNotFoundException* D2 L$ i, Q+ ?" Y
        at swarm.Selector.<init>(Selector.java:76)
* `, }1 i* }+ i! X        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ X; W# T) k/ U2 T  m6 ~/ `        at ActionGroupDemo.main(ActionGroupDemo.java:67)# ?# M1 b0 {: L% |6 s+ ]% s0 L

# w* y& W) k' k, V4 \2 ]" q
) _8 g$ R+ P* X5 x, h1 kimport swarm.objectbase.SwarmImpl;4 [4 P. r9 T3 p
import swarm.objectbase.Swarm;
. ^4 B" K4 ~; W( aimport swarm.activity.ScheduleImpl;5 {; a; x) `% {3 J( n
import swarm.activity.Activity;5 B3 {" z9 u6 q- f+ V
import swarm.activity.ActionGroupImpl;9 N0 z+ P+ x- d3 \6 p
import swarm.collections.ListImpl;
- Z1 Y7 `$ d- G( G' W* f' c# L5 Vimport swarm.defobj.Zone; / l* W- c2 |; k% X$ {/ u
import swarm.Globals;8 y* ]* f& i1 g$ z7 s% ?3 q, }1 P5 `* s
import swarm.Selector;$ u% W- q% q; e; Q9 V8 N2 O# q
import swarm.activity.ActionGroup;
) ^8 Q1 o+ g) u+ Kclass Agent {8 {1 c$ d$ I. v! b. x
        char id;( c5 \, b4 I& S7 \& g3 p$ A8 ?3 B9 J
' h& _! T( P* }! p
        Agent(char id) {
5 d6 Q! e& B! W7 h* j$ k1 ?! D                this.id = id;- D2 Q9 A" y& r: U  d- p
        }1 `1 T, D/ \' t7 Y: c. L" P2 ~

& r# `9 I; K7 q2 }8 n' W' T3 e        public void agentStep() {# \6 O6 v5 k6 G# V
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 M, Q6 k- A$ s8 |        }
) {" T: s6 J7 R, S3 {}7 o" b$ |8 m+ ?- L0 ?6 D7 U

8 r% R1 ]& Z& Q. A' Z, kpublic class ActionGroupDemo extends SwarmImpl {
) m2 ^' L$ T8 o' v9 o        ScheduleImpl schedule;
" \3 N8 V1 {/ F9 i6 v        ActionGroupImpl actionGroup;9 p; d1 l/ E" v7 t
        ListImpl list;
8 I& G) v; K! S! X4 C        char Id = 'a';
& g# ~+ d& w, W/ {3 C
2 Z8 r9 q% G( h) M9 I! m        ActionGroupDemo(Zone aZone) {
8 [# Y! u/ w# {3 F1 J                super(aZone);
1 i' ?- L$ u* R9 j( X5 X                list = new ListImpl(aZone);
# M2 n2 \; G1 l) H* ^9 J+ w- L7 p                swarmSetp();  W% Y% L7 M5 Y; y& l
                actionGroup = new ActionGroupImpl(aZone);
; D( g' g* a' i7 ^% v6 y& C, a* E; B                schedule = new ScheduleImpl(aZone);
/ `* h/ r  j, l. k$ t. h- i/ V, f                try {8 P) u/ G% I* H8 _! ?6 H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 w- `9 n: L" ~2 [- x& a% I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 h; X; G# B) W7 e" k                        
  m$ h' r- ^6 @                        actionGroup.createActionForEach$message(list, agentSel);
5 W8 ~9 v) g) L# Z6 k7 k0 x0 w                        actionGroup.createActionTo$message(this, swarmSel);
% O5 D' W- O) }; X                        schedule.at$createAction(0, actionGroup);
; h( U2 J. Y4 L* V# s                        schedule.at$createAction(1, actionGroup);
; }4 _& M( @. N  N% V1 l                        schedule.at$createAction(2, actionGroup);
6 t3 @, X, R8 G- l3 w" H# ^) a. h( e: r; O
                } catch (Exception e) {
9 H( e; `1 C& ]% l. O3 S                        e.printStackTrace(System.err);, x" Z/ y# \5 H& _& `( e
                        //System.out.println(e);
+ Q) r% Y, l2 h% e' u                        System.exit(1);& \3 x* D; Q3 g
                }5 H2 Z3 f9 `9 q  z7 R# s
; v  b/ |: _$ v) n1 u& t. N# d
# j4 Z( F( K% X  B$ P  K
        }
+ z, `- r2 \7 V( N1 P9 z$ v* a3 o9 Z( d+ C
        private void swarmSetp() {8 r8 R/ I  J9 `# z2 l  @  b4 b% g
                list.addLast(new Agent(Id));1 r. R- y4 B( S4 j! k
                Id++;. g( P; g5 z8 [2 p$ \1 ^
        }
9 }$ O& u; ^7 p% o- s: w" [" J: d
& h/ p, \! \, s3 q0 l        public Activity activateIn(Swarm context) {% X) `- U, \; y
                super.activateIn(context);  b+ Z/ S7 b, f8 E0 J) A: a
                schedule.activateIn(this);( K" C; }( W- d5 E
                return getActivity();- D7 A6 e5 l# ?2 H: W$ ~
        }" Z9 ?& r2 U7 i" p+ H
/ u. K/ F- |; ~1 _
        public static void main(String[] args) {
; G0 X( X2 b# G; [  Y+ ~                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  E; R: Y1 G( Y, P5 R0 i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ ?, s( O2 i7 @, N$ U7 C  y                swarms.buildObjects();
6 |! D0 m' G" W                swarms.buildActions();' B4 Z7 s4 d. |$ `, `
                swarms.activateIn(null).run();" F5 \, q" t$ R1 B
        }" [# }8 Q! J6 h. w9 a
0 T0 V- Y4 j8 r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-4 22:00 , Processed in 0.017214 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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