设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9049|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , Q  x7 J! K; J1 r! A) I

/ `1 N0 C+ t0 g1 S9 z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) ?  e3 d. e2 w+ |7 l6 i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* T7 j: ^0 q/ v9 N4 M& w  `5 ?! D7 j
swarm.SignatureNotFoundException
7 A% H% [! r- _" \& h6 Q        at swarm.Selector.<init>(Selector.java:76)
1 J' ~5 M% w2 o' ]/ f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 X+ c, M: w7 K' L$ Y; W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) _7 ^+ @2 S8 z% W. \1 @( \+ X0 ?' u) d5 K" b
/ B. u% O7 i, j. }8 c
import swarm.objectbase.SwarmImpl;, N+ L; w& d" l8 ]/ M
import swarm.objectbase.Swarm;
/ X- o2 @" b" Y' V7 E" simport swarm.activity.ScheduleImpl;+ C1 B* D: ~, D& m& y
import swarm.activity.Activity;1 ^  d6 h" m( e) \$ z
import swarm.activity.ActionGroupImpl;5 Q9 Y' R0 t4 j( B7 J; A, I$ F8 \9 Z7 [
import swarm.collections.ListImpl;
) N0 A" N; Q6 ?& m4 D, uimport swarm.defobj.Zone; 9 W& |4 E# J3 m: F; O! y
import swarm.Globals;
6 n1 ^) j: C. Q1 j5 S1 mimport swarm.Selector;
3 {, |; Y% b, B! Q, ]* i6 v" a$ nimport swarm.activity.ActionGroup;
: X" ^% F, w5 I3 G: [. U1 vclass Agent {
- K% @: G9 q' }0 J8 \7 o0 g        char id;
/ v$ ?8 A9 b: U' K8 p$ }- j# {
. [1 ]  j, j+ i0 u) w3 G. U        Agent(char id) {, a1 U9 B& Y( c8 g) i
                this.id = id;+ J- V; h0 T5 B
        }
; @( e# I# u$ `& Y$ l
( f% y9 X) A+ W7 o% `) S& I, ~" W        public void agentStep() {6 s2 K% {! K/ _  J. q
                System.out.println(id + ":" + Globals.env.getCurrentTime());  `' ~0 y- v2 M3 d
        }
2 i2 k: P8 _" W9 O! W5 C}
# B- T: s" X8 Y8 [2 e. g, l8 x) O; K) ?6 `
public class ActionGroupDemo extends SwarmImpl {
6 z7 H9 S. C" B; C3 C        ScheduleImpl schedule;6 _, J+ X/ p6 A3 C
        ActionGroupImpl actionGroup;
3 Q- y7 ^* d/ F! R        ListImpl list;& @* T6 c* ~8 Q5 [$ Y" k9 G8 m
        char Id = 'a';+ B2 @3 ?4 D7 D! I. z. h. @
+ A. I6 N0 R; p5 j* I. U; b: J
        ActionGroupDemo(Zone aZone) {
. y9 g/ i, i0 `4 }( \8 D                super(aZone);0 z/ O& z& s1 W% E* C0 r+ f
                list = new ListImpl(aZone);
% k9 _  K: Q: ]  P                swarmSetp();
4 N% W- J: ~  b                actionGroup = new ActionGroupImpl(aZone);2 w6 B5 N  ~1 q, w, L4 u$ G
                schedule = new ScheduleImpl(aZone);2 e% S2 `" w( R# f/ i3 [' p
                try {- I, n/ m$ R  Z+ {0 u5 D; i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) W: A6 q+ b7 G1 k+ s0 P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 I) S# F9 ]  [# {* n6 x; d
                        ; s- x' h+ M! A8 d3 n* Y! _
                        actionGroup.createActionForEach$message(list, agentSel);2 g( i; o0 l  }) j$ \5 K2 M
                        actionGroup.createActionTo$message(this, swarmSel);, b# H: |9 H5 `; t
                        schedule.at$createAction(0, actionGroup);
8 B& f! L! l9 _6 T: u                        schedule.at$createAction(1, actionGroup);
( s6 A4 H! x! L' N' a                        schedule.at$createAction(2, actionGroup);+ v5 `- x! z3 r( P% a; o8 N2 `" a
% Q' I2 D- O' S+ I8 L6 {- W
                } catch (Exception e) {( ^: n$ E: |* W
                        e.printStackTrace(System.err);0 \* d( \/ p2 p# q5 X
                        //System.out.println(e);; E! O7 }0 O0 {) m
                        System.exit(1);
, d: |# {5 ^. c                }
6 ~7 n8 u: C  u' C; m3 ?: n( a3 o
- l: U3 T5 j6 Q
& @  l- ?. R; I% f        }
, Y0 u9 S! E7 a, [4 ?0 N% E( ^* b5 ?2 ?5 W+ A0 _* d
        private void swarmSetp() {( @6 H; S! L8 ~2 o
                list.addLast(new Agent(Id));
  R  z5 V$ @3 F6 z0 e8 ^                Id++;
9 H* y( N! B9 }6 ~) f. |        }
& s1 h  @( `" N7 e$ c! g$ ?+ d5 a. T% K  K5 Q/ J/ _5 t
        public Activity activateIn(Swarm context) {9 z7 N4 j: n- ~# R' v: W, ]! H
                super.activateIn(context);9 N% ~% y' T  L! G) n+ A
                schedule.activateIn(this);
( G9 z4 R5 y/ a9 u- o7 X                return getActivity();2 s2 }  x( X! ~( }  |1 F0 n3 B
        }
/ l- B% {0 }/ n& b- ^, e6 z/ Q: G4 r" L. O! [
        public static void main(String[] args) {
' K+ J. U% Y( M( ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& T: ?( C5 y; \0 Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& T: t! Y' D% x$ L
                swarms.buildObjects();
" U4 _3 I! T1 [  F1 v+ x                swarms.buildActions();
0 B- K, N  B" b. |                swarms.activateIn(null).run();% P4 N7 h  }$ O1 t9 I7 L
        }
" R- q2 I% {  s% h& u& l2 G7 X# g1 f5 T* W1 r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-30 04:00 , Processed in 0.016698 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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