设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11861|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . Q7 I! P9 b* e1 j9 i* n: Q, G

% l$ n8 e" h8 n2 Y1 j+ _, G. _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# l4 v9 u$ O) A8 w4 v3 Y* b* J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 s/ M, O# D3 s" ]' V9 M
swarm.SignatureNotFoundException
5 ]; M% S& {; t1 `( ?, Q        at swarm.Selector.<init>(Selector.java:76)
$ }" p0 b; U! r% ~" Y; r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 m+ G! N: j/ X9 N! M        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ c6 z  E) i9 g* ~$ F3 G! V; I1 N
' g7 F9 G" I1 u, y

8 V0 z  ]- B' a' Jimport swarm.objectbase.SwarmImpl;: v% r7 f" X8 V) {  d! `1 F4 z
import swarm.objectbase.Swarm;$ g7 Q: f& n$ c" k
import swarm.activity.ScheduleImpl;
8 b2 E3 r; q, h" `7 Dimport swarm.activity.Activity;$ k# s' M4 I( u0 A6 e; P* a
import swarm.activity.ActionGroupImpl;: G4 F9 h- V7 a( ?4 m: C
import swarm.collections.ListImpl;( c/ x; l5 y* O4 {
import swarm.defobj.Zone;
6 T3 p- y8 E) ?7 C8 j" Gimport swarm.Globals;& w  L% U: m+ K" k. z- o
import swarm.Selector;* O# W  n& k: R! _
import swarm.activity.ActionGroup;
3 q/ ?; r- C. y* Q9 }% Cclass Agent {
8 l/ F1 ^8 n) z2 Z" p        char id;
( K3 c4 n/ Y" v1 g3 A5 t7 r* g3 ?4 m5 Z4 k% `( x3 J6 m+ o* O
        Agent(char id) {
) P0 b# u. x, O$ K                this.id = id;
/ D; w8 Z3 ^; o  E$ z7 i        }! G% }- ~; I0 n% s4 j- J

- o0 }* B' Z0 j2 f+ \8 I7 P# p        public void agentStep() {3 h3 N8 i$ n9 _4 D5 R. D
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 s* A. y9 U. ^2 s        }2 p* Q, S# K0 I0 z8 K2 D
}
- l3 ]1 Z; y+ v" {) J) J+ u, f" O5 c" s% d* U2 m) U1 E
public class ActionGroupDemo extends SwarmImpl {: O! ~+ Z; [& [* J
        ScheduleImpl schedule;
0 p! r& `2 z: n5 ^  _        ActionGroupImpl actionGroup;: X3 v5 V5 @4 w* F% E8 P
        ListImpl list;4 U1 [3 _+ G$ G0 @. S4 o# T
        char Id = 'a';
8 E) l; o; ~- i! e
+ s9 {0 y. x# }4 P4 l: A& Y" T        ActionGroupDemo(Zone aZone) {
! z9 N6 j6 x4 p                super(aZone);+ T7 f: c9 J7 l! s8 [* P
                list = new ListImpl(aZone);
+ y$ R6 M0 G6 f( V4 b                swarmSetp();
" t: }' H# I, L) b4 I* x                actionGroup = new ActionGroupImpl(aZone);# W+ v5 n9 W+ o! C2 ^7 _) p
                schedule = new ScheduleImpl(aZone);
1 _. y& T. D0 r. U9 x2 z                try {: d5 t9 U) \& c" S9 S: C
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 o  u3 l0 e$ S1 U! x                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# G; u: T3 H0 @& E+ J' ]0 C                        
6 W8 D1 y# b. \                        actionGroup.createActionForEach$message(list, agentSel);
# P3 y. b+ m$ N+ \' z/ g# A                        actionGroup.createActionTo$message(this, swarmSel);
- k1 n/ C4 }/ d  G& Z# \3 D                        schedule.at$createAction(0, actionGroup);
6 y6 U1 f5 R/ L7 e7 F; y                        schedule.at$createAction(1, actionGroup);
: p1 W, X6 {$ n/ U6 S/ R                        schedule.at$createAction(2, actionGroup);
- B1 d2 T2 E7 g" a% {$ ]0 C: H: X! @' J* _! S
                } catch (Exception e) {
  r# A) U, Q% b" y                        e.printStackTrace(System.err);2 r/ F+ L9 a) E& C# P( z3 m, J
                        //System.out.println(e);
/ O+ q  W3 ~) y0 M3 }                        System.exit(1);
4 u2 w5 S7 P/ I                }* l# d4 M: [& @. M6 J/ x! x
$ m5 ^( L4 M8 l# |7 B/ j( ~
5 Z4 q6 ^8 ?' C* [( b. l: n9 E
        }7 n2 J9 _6 p: I5 M+ j
3 j& j  ~1 L1 ~
        private void swarmSetp() {6 @+ S  V2 a6 \1 [$ S1 }
                list.addLast(new Agent(Id));
- e+ z/ Y4 [, v3 b0 H                Id++;) m2 b$ B5 r" t' `; z0 ]1 h
        }
% ~/ C! P! K! [  @+ D% Z7 Q7 W1 @& n; C$ G+ _
        public Activity activateIn(Swarm context) {
: D1 F( _2 T6 u& [& z! W1 E                super.activateIn(context);: ^9 q: y5 A, o2 V, c  T  L
                schedule.activateIn(this);* i( A4 ?: A! g
                return getActivity();
0 Z5 G/ T2 [, ~# h2 B7 d* ]        }. h& u  Q. \4 v) s
3 q2 t! f- z8 W5 m- ~/ v
        public static void main(String[] args) {
' Y, ^8 C0 n% `; A1 ~" @" l' k                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ F) o$ Y* C) ~* \! X                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 O+ m4 s: s, _6 s1 v, O                swarms.buildObjects();/ N: H$ Y1 E  I* D+ }
                swarms.buildActions();
) A6 |/ R! w0 P+ H( \                swarms.activateIn(null).run();8 L8 K3 w" k! ~; V
        }9 I2 }3 H* Z3 D, P* k3 I- i% g

2 ?4 t2 d! V$ e/ N& N, X, H/ n}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-23 23:30 , Processed in 0.017436 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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