设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7390|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / u! z3 K  T6 g; U$ K
$ o. N1 n5 c; I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 @5 D& s% @: ]# V  `' T' m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 S6 T) R! x" I6 U! H3 o+ zswarm.SignatureNotFoundException
" m5 A* ?! ?. X0 b        at swarm.Selector.<init>(Selector.java:76)" W4 K4 o3 J0 ]6 I/ Q) ~
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 Y" B2 j' G1 ~  \        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- _5 _- R2 p$ ^8 |9 @7 b2 f# O8 r
  I  a2 x4 I" n8 j" Q" f0 i# n9 k+ S0 `# U) n4 w7 m; y0 m
import swarm.objectbase.SwarmImpl;5 p5 z  N4 u* I
import swarm.objectbase.Swarm;9 `* X3 y* B4 O6 r9 v7 z
import swarm.activity.ScheduleImpl;
. U0 V9 R$ I" K5 \, Wimport swarm.activity.Activity;8 w4 \/ y# s' z8 Q# l
import swarm.activity.ActionGroupImpl;. Q5 S, Y/ X( `; Q, G" c
import swarm.collections.ListImpl;" |7 E. Q' X1 z) ^
import swarm.defobj.Zone; 9 _9 i7 @7 Y: [) T2 R9 n# H
import swarm.Globals;% P3 K4 K5 G, N: o, [! J5 Z  K
import swarm.Selector;; W) t# T1 V2 f1 T7 M
import swarm.activity.ActionGroup; 8 M! D$ _1 W( K3 l' E' h0 _
class Agent {
% m0 |$ X. w; G# {! ]: O5 l0 L        char id;% x' Y0 b  a1 `5 A% ~+ n) P

0 j& @0 X/ M/ q2 \9 W6 m6 ^        Agent(char id) {6 Y( v% A8 N! I0 e
                this.id = id;
% j  b) {; c! F* @        }
1 Z) \* i1 q+ u5 v- Z4 p$ M" O8 s. a0 A
        public void agentStep() {
; Q' {+ C" A2 x& }8 P' b, S                System.out.println(id + ":" + Globals.env.getCurrentTime());0 o# S* `2 _7 Z4 d# ?
        }
4 y! X5 U8 ~  x: g8 f9 P8 {) d}
0 h9 W0 \" U) q& d1 g% O0 Z5 k3 G& ?
public class ActionGroupDemo extends SwarmImpl {
8 `9 T) u. O. ?  r2 D# l        ScheduleImpl schedule;3 c3 P8 Q1 U+ c- A# F' I
        ActionGroupImpl actionGroup;
5 V4 f! q" e/ W% Q9 l2 |& ?        ListImpl list;
0 M/ i8 W9 F5 R        char Id = 'a';6 {! E# u' V) i$ a& A  S, r' Z

5 j  E# N3 A' E$ T        ActionGroupDemo(Zone aZone) {
2 k. N1 {+ A3 v                super(aZone);
$ Y* O$ W3 T0 n. r) ^! ]1 A                list = new ListImpl(aZone);0 o, [) }1 K- B" M
                swarmSetp();4 p$ W( y- O3 v/ y
                actionGroup = new ActionGroupImpl(aZone);2 l* X. N9 Y! V5 f
                schedule = new ScheduleImpl(aZone);
( N& }8 x# `) [# q% h                try {
7 a! ]2 r1 P9 N+ L8 C' c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 P  o2 y2 p; y9 R" {5 Z5 ~- I1 t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 M9 A; [6 q* S
                        6 X! O" X$ m+ f3 g1 j# g$ L5 }  |
                        actionGroup.createActionForEach$message(list, agentSel);; \6 s3 P2 a' ?9 i: f
                        actionGroup.createActionTo$message(this, swarmSel);
' T* a5 i8 f% w" f8 p. O                        schedule.at$createAction(0, actionGroup);
1 p, q/ Y, O" ^& M4 A                        schedule.at$createAction(1, actionGroup);
" p. z, ~+ v+ ?6 x9 h" F' h                        schedule.at$createAction(2, actionGroup);
! t/ G! C% F& K; J5 z. V, U. M
( a( o; `. y9 Q" d                } catch (Exception e) {* r4 r  j! y8 @4 G$ h% }2 Z0 o4 L
                        e.printStackTrace(System.err);" w& \# O5 b2 L! ]9 ?$ X/ l
                        //System.out.println(e);* G  f9 ~, T3 F3 [
                        System.exit(1);+ R4 l1 t  E6 M2 s. x0 \2 W
                }) D) z  p4 s; d" y
* D6 d  h) }) C2 a3 F" o; V

4 ~. K5 [) k/ `. c# \6 P$ N8 W5 i        }  N+ F" P  @* Q6 E5 C  B# s7 }0 t" ]
9 O2 ^6 l& k) R3 _9 k
        private void swarmSetp() {* d; n$ s! h/ u7 H* x. {
                list.addLast(new Agent(Id));
/ o, G" V6 \9 ]                Id++;
$ [3 Y/ K' }) v% l% H# g4 f        }4 H) u: L; n" o! F6 ~4 l, F

7 n" u% x" a) v6 H- H3 m        public Activity activateIn(Swarm context) {
$ m' m" n* g# T  x5 D. m$ D                super.activateIn(context);% `- d; s) ?2 f  M" r# s
                schedule.activateIn(this);
/ U& N7 S9 G/ F- g. z; B7 K3 ^& A                return getActivity();
. [/ B; Q9 V" \* O' I        }0 y1 }3 a+ Q' K7 G2 A
% E2 v- a0 g  _& c* o) j
        public static void main(String[] args) {; w# ]7 Q1 n2 }2 A: Q0 ~3 q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) c9 S) U* w8 Z4 g& C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ X! X% F' e  p
                swarms.buildObjects();
4 ~3 x7 z7 h- g$ ?9 C4 ^                swarms.buildActions();( d; n: _6 H# ?3 X  d! V/ w
                swarms.activateIn(null).run();* z& r/ O; h) z: H
        }
6 q. b, Y$ U  |6 X4 C5 }# r6 f& C- y- O" p3 R" t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-28 21:43 , Processed in 0.023074 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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