设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9577|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ R+ O+ A5 c- A9 x! e6 ~
$ [" E7 ]' b. u/ b6 r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. @. P+ N0 `" y5 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 m  e( L( r( _
swarm.SignatureNotFoundException
9 ~" y# ]7 z* R' y* N% k        at swarm.Selector.<init>(Selector.java:76); A  Y7 ?! \  ~
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# P5 m* e6 D4 h4 k        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 V  ~  u' L6 A) K$ F7 A- m# V# A  i

1 W7 Q# r% ?9 n9 {/ m" ~" l- ^0 qimport swarm.objectbase.SwarmImpl;
& L# p! K+ ]8 |4 m; s# kimport swarm.objectbase.Swarm;+ V& q6 _+ |4 Z: g( C3 r' G2 y+ y5 U/ f
import swarm.activity.ScheduleImpl;
. c# p; O2 g% f' r; P' {7 gimport swarm.activity.Activity;9 q+ {3 y  ]2 v, \
import swarm.activity.ActionGroupImpl;8 l1 q; N5 n5 v' ?8 l
import swarm.collections.ListImpl;
8 S/ f+ m$ T* W( Ximport swarm.defobj.Zone; 1 s9 p2 x& F1 N' w" k
import swarm.Globals;; E8 D4 Y, `6 Q2 G$ L% I
import swarm.Selector;
# `2 n0 X! n$ Y( Z' o$ ]import swarm.activity.ActionGroup; : V% a) H& c) M. K1 x
class Agent {
' A/ o3 K9 T; S) u: I, R) D2 v7 ^2 m        char id;2 e0 R/ D  Z5 y# }% o+ k2 B4 C
2 q) X0 N  @* t9 }+ k
        Agent(char id) {" l, p7 A  v7 b6 ?' ~' x
                this.id = id;' `' r6 c6 G' K" z8 K# u* l, N
        }+ g  w3 l( R' @7 U% e

& f" _3 ~! l# F        public void agentStep() {
/ |2 A% P7 D0 B" }' n9 ]( T                System.out.println(id + ":" + Globals.env.getCurrentTime());, K& p' E0 j) L) _5 s  a
        }4 @" z* {8 }7 f. a$ m
}2 E8 P$ I' c. \$ C# B8 s- s

% n: J% m" Y* ~6 v$ vpublic class ActionGroupDemo extends SwarmImpl {
3 G3 {5 ~. o0 ?/ v0 I        ScheduleImpl schedule;
$ u, c9 S2 B. H! X3 A        ActionGroupImpl actionGroup;6 K1 M" O8 k* Q& k# x/ B' m2 E; t: D% H
        ListImpl list;2 C% O7 `6 E& e+ c4 }4 s- U8 H
        char Id = 'a';; d4 r: A: i7 F, f5 M  C* C2 f( P
! e8 T( K2 }; r1 Q, r
        ActionGroupDemo(Zone aZone) {) V0 A) C: `5 O5 X7 F
                super(aZone);) m0 w$ ^. ?" q9 c
                list = new ListImpl(aZone);
$ q" c* `* D) d( U                swarmSetp();
7 Q, A. d! ?: f7 Y. K1 X$ N                actionGroup = new ActionGroupImpl(aZone);
6 }7 c. [4 y- u3 R                schedule = new ScheduleImpl(aZone);
: N* C& s- ]) a                try {% r1 ?/ G- ]1 S3 A8 f# a
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 H, g7 k4 Y1 V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! V; b: D" Q  L/ c+ O: u# @
                        
9 ^5 z4 N0 Y: z8 F                        actionGroup.createActionForEach$message(list, agentSel);
2 N6 Q' P+ N: P6 r- `( r                        actionGroup.createActionTo$message(this, swarmSel);6 B2 y  c" z0 @/ R* R
                        schedule.at$createAction(0, actionGroup);3 k$ t  y1 r6 W# N
                        schedule.at$createAction(1, actionGroup);( \" o8 f2 |9 h  p. X# W; W
                        schedule.at$createAction(2, actionGroup);
1 M) T- x5 c* W* c) ~; C
1 B" Z) C$ X) T                } catch (Exception e) {
6 D4 r2 `- N) M- S; `8 ~; S                        e.printStackTrace(System.err);
% c. f/ n1 V) h7 U; J+ a                        //System.out.println(e);
( [( O' r9 w$ {, e9 [' h1 }5 |7 p                        System.exit(1);4 V3 W, j9 U. Y9 |$ U" V
                }
' \# `+ v* l( v- P0 T4 a1 |, c) d/ y& R- Y% b! {

0 X, U# V7 d& d. ^" ]8 Z& M        }
4 K* Y; d9 X. K0 h' j% z3 o( E4 W. o- ^% L: l4 M) m
        private void swarmSetp() {
3 E& o7 Q& F) f$ c4 J                list.addLast(new Agent(Id));% o$ B) V' c0 m# a- |  C, @5 A% M
                Id++;* k& m; d+ Q  h) T1 Y9 v; q
        }; R. n/ N; C6 A) z

# F! x4 x0 }7 Z/ }: D5 l; s        public Activity activateIn(Swarm context) {
: j' r" H& F8 f9 N$ G5 {                super.activateIn(context);: Q  V0 H+ ]! Q4 a! P
                schedule.activateIn(this);! s+ v; j4 A8 s+ G
                return getActivity();
5 Q0 k" R  n0 o        }
5 [4 D2 m( y" g6 \: j" T, E& ~0 G/ T( Y6 b# j" K
        public static void main(String[] args) {" k0 F% B/ @% U% @: _/ l9 b' Q2 {9 ?- q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 {$ U5 S1 N  B% i* h$ f, x' m                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- R+ C( c8 ]5 l) Y9 j: D9 K+ I$ H
                swarms.buildObjects();
  O* [8 l8 \9 m5 Z3 D5 P                swarms.buildActions();6 V9 d5 A( W/ b3 R
                swarms.activateIn(null).run();
. k) g/ G* S3 j4 R& y2 f        }5 D- E. J) l# c/ [8 i
$ [2 L0 @/ Z5 e9 e! T0 u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-15 17:27 , Processed in 0.019148 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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