设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13261|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 ~6 i. D8 k7 S! h' S' Q9 B- {4 h/ U4 {/ [% W8 z- K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ z- X$ k' ]( a2 a8 C1 U! \( L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; L8 T+ b5 s7 A0 Oswarm.SignatureNotFoundException6 r- {, V/ D" h$ L2 D- O: s
        at swarm.Selector.<init>(Selector.java:76)
6 D% v: p1 ]6 B5 U: `: Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 o4 [: z% ?" ^. D+ |
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 }5 p/ Y" ]/ ~8 Y" W* E# y, K) U/ c4 K! {( W4 Y1 G  |

& ~6 b1 M, U7 I# B6 m3 |' Gimport swarm.objectbase.SwarmImpl;
' N0 x4 E# T: t1 Qimport swarm.objectbase.Swarm;4 [: l+ a) u: B1 Q% @* q& F
import swarm.activity.ScheduleImpl;
1 a, z/ O& @8 _( `* |' n8 G, K. \9 Kimport swarm.activity.Activity;
) o* U/ I8 W" }5 B2 Ximport swarm.activity.ActionGroupImpl;
1 n  P& e7 X8 v6 _import swarm.collections.ListImpl;/ Z' G4 g# D, l$ n- }# V
import swarm.defobj.Zone; 1 j/ m: b# ]6 P2 \$ v
import swarm.Globals;( U# h$ J; l; M+ ^7 }
import swarm.Selector;
: Q7 j) O' ^% gimport swarm.activity.ActionGroup;
5 b# P. x2 W& B6 Oclass Agent {
9 m* h$ k* ^/ r0 h& _- z8 u        char id;
6 M- j- D4 \2 X! U( r. H
* i% x6 `( g) k; O* u$ p  q4 v        Agent(char id) {) M. b1 ~- Y& I' ^8 y3 {
                this.id = id;
& O' q& S7 o* W; \9 @: M        }
4 ]1 ^5 z3 o1 M+ L6 \5 E
& v3 x' }1 h! z$ T5 C        public void agentStep() {9 Q9 g, R6 w/ c- b3 @0 Y
                System.out.println(id + ":" + Globals.env.getCurrentTime());' b3 U/ ~8 d! X* O6 V$ k
        }& \& q% r- O0 ?
}
$ A$ A- M6 I) o
1 H1 u+ [  m  U" Y  d8 R7 ]& m4 T) {public class ActionGroupDemo extends SwarmImpl {
8 Z2 N, P' N9 s/ O' A        ScheduleImpl schedule;5 u$ m8 Y% Z  z
        ActionGroupImpl actionGroup;' O6 O& F- T3 i& z0 m
        ListImpl list;
7 Q$ n% `- t; Z5 D9 A        char Id = 'a';1 H! T' E7 a2 }7 n

1 T1 v' w# v$ R1 ~" ^4 l) g        ActionGroupDemo(Zone aZone) {
! P) |9 u6 R! W) ~                super(aZone);1 I2 `" M. b* R- Q) c* F
                list = new ListImpl(aZone);
. Y& t: L+ i' e                swarmSetp();- y5 l; j  W6 {7 g" x
                actionGroup = new ActionGroupImpl(aZone);
1 a4 \7 Q" s5 O                schedule = new ScheduleImpl(aZone);
$ B. b0 z- E0 `3 q                try {
5 u' g& _  m$ c0 R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- K+ u( C* j; q% w, I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ w$ k: q) X( h
                        
. n# _6 I& B: D8 Y$ m                        actionGroup.createActionForEach$message(list, agentSel);6 a% S6 h- x' m
                        actionGroup.createActionTo$message(this, swarmSel);: ~3 x  ?5 E3 u1 _3 S; Q- ]0 i( O
                        schedule.at$createAction(0, actionGroup);
6 ^$ Y3 n! }7 D7 {                        schedule.at$createAction(1, actionGroup);
3 t+ E/ x! Z; V8 C" K                        schedule.at$createAction(2, actionGroup);) g* z. O8 h0 r8 e
* _- f. f$ b3 f  J9 k
                } catch (Exception e) {
# g, v. X% H) z4 q: E. A2 T                        e.printStackTrace(System.err);* i5 s5 M; \# a: Q$ j  Q5 ^7 t
                        //System.out.println(e);, p3 p+ H, w  m5 d0 ~
                        System.exit(1);2 O5 y; K1 G8 s9 L
                }
4 V; K9 b7 C& Z8 _0 b8 C5 c/ F3 w
7 u2 t) D: T, T" z0 p: y/ u
3 T/ [1 U, x8 z, a) |. [        }
3 W; g- C5 c- _8 v( _7 `
$ ^$ A$ ~# o0 }$ E; l! x* K        private void swarmSetp() {
" h3 l% }9 n9 g" E$ n7 K                list.addLast(new Agent(Id));
# ?) ~2 b- z. Z* D) H6 O0 J                Id++;" b, w0 k6 M' X  C2 V: k+ ]$ Y
        }
4 I: C- o8 n* d8 ?9 v9 E6 `- E: m9 Z! U, ]
        public Activity activateIn(Swarm context) {# {9 p. I7 j/ W5 k
                super.activateIn(context);0 e2 q3 [+ p! b  a$ I
                schedule.activateIn(this);
1 R0 P) K" x+ r                return getActivity();
% z9 i1 G' Z0 q9 r' d# `9 I        }2 n. _% y; [  n3 `8 @- _3 F* w) P

; z9 t* `" P; [        public static void main(String[] args) {
0 M) o1 {; h1 f2 {- `; h                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ h! S% A% j4 l0 G; U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, d) W# G2 y, m& w                swarms.buildObjects();
6 C! _2 }6 B1 |' A8 ^3 B; k# q                swarms.buildActions();
: H! o' t! f4 ]9 ~( Y, m) o5 ]                swarms.activateIn(null).run();
" R$ W/ {( A7 K6 A/ D" ]9 v- S        }" v( g% w4 s3 J
+ _; X4 O* I, c# W$ _
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 04:46 , Processed in 0.021276 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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