设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11478|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , [& C1 v* ?8 N2 f" z/ S% s5 f' }

4 u. t8 y8 H1 F+ V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 [, n, u2 g; q3 o- c6 x2 u7 l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( m$ J! ]2 a" m. O: b' z
swarm.SignatureNotFoundException
" {# }0 _8 {. W: C5 h        at swarm.Selector.<init>(Selector.java:76)
4 U6 h$ Z/ {: u  ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 f4 g& G' }2 b
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ A" I' W7 M( d# r
$ W/ v  `+ V: S# F8 t' F
4 L2 q2 f$ g6 B& l6 G9 z$ Simport swarm.objectbase.SwarmImpl;
& G- |8 d4 g  `$ Y9 Nimport swarm.objectbase.Swarm;
' X( c# ?  B  Q) \0 aimport swarm.activity.ScheduleImpl;, D) }9 e6 z6 v' }8 ]3 c" C
import swarm.activity.Activity;, Q% A0 t1 e' t  i
import swarm.activity.ActionGroupImpl;1 c9 z+ o- [) [, |$ \
import swarm.collections.ListImpl;
$ Y' p' J" C' L3 ^import swarm.defobj.Zone; ) m4 }" y% Y2 e, b& O) }7 S5 {
import swarm.Globals;3 c2 g" q3 u9 S
import swarm.Selector;% e% o; q/ }2 v9 q6 Q3 I- c
import swarm.activity.ActionGroup; 5 U, {* [: P: O8 |
class Agent {
" X+ H# T2 s+ Z/ @8 \' q        char id;
7 ^& f" Q8 O, K' k) z2 s7 |
5 j/ ~% f' b  d- F* Z) q        Agent(char id) {
5 C% ?: m1 U* B- V* \( G; a  e( Q                this.id = id;
+ I4 F( D+ K# ?, i' n0 H        }0 G+ J3 O' R0 p

7 ?3 T/ b1 y+ v7 m6 [) H4 x) I        public void agentStep() {
& j3 s% H0 {+ F  d1 s( {                System.out.println(id + ":" + Globals.env.getCurrentTime());" t% q8 |% R& p
        }' e% f; T; \, C: o4 Q0 D
}
$ s1 j6 p9 N6 Q( O& m3 D
/ f- k" U: k. f0 z% W! Zpublic class ActionGroupDemo extends SwarmImpl {
; Z: ?0 w& b. a        ScheduleImpl schedule;
1 m1 E' X: i2 e8 ?+ n& W        ActionGroupImpl actionGroup;
$ C$ K- Z6 |6 P        ListImpl list;
/ e. B5 i& t3 S        char Id = 'a';- _" ^* ^0 T9 p1 }* ~

# A) L; G- N9 y: q5 l% K$ c; H% D        ActionGroupDemo(Zone aZone) {
/ [, K# o# D8 x+ n                super(aZone);
5 a9 ~9 A9 Y4 i0 B9 [( T                list = new ListImpl(aZone);/ s6 T2 Y" r2 |: D' T  e
                swarmSetp();' D+ l% e- x9 R7 m4 e+ w
                actionGroup = new ActionGroupImpl(aZone);% a: ]  u) P7 I( f: U0 Q) a- w
                schedule = new ScheduleImpl(aZone);- r, ~$ w/ J- Y: D& I
                try {
7 W; R5 s. I: J( \6 m                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# T. @7 B/ \! U" d8 B; p
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ B6 @7 T- @" K# \" y' l                        : m; V& n- I7 W
                        actionGroup.createActionForEach$message(list, agentSel);
1 J- H' B0 m$ b/ F, [7 h, `+ B8 A                        actionGroup.createActionTo$message(this, swarmSel);
. q/ g  [4 H+ C. z1 R; s                        schedule.at$createAction(0, actionGroup);  J! x7 `6 ?- p5 ?; q4 C
                        schedule.at$createAction(1, actionGroup);' F4 `4 ^. b( V9 @. u
                        schedule.at$createAction(2, actionGroup);" K) F/ ^5 S2 v* c7 [
2 i# G# h# }; R; U
                } catch (Exception e) {
: d, W% b  R* s/ f0 g& c- j/ g: [                        e.printStackTrace(System.err);
5 p4 Z1 @; b5 G5 @: K                        //System.out.println(e);' |6 N4 C1 c, [2 u7 a0 d& L$ T9 T
                        System.exit(1);6 C$ T' Y0 Q, u
                }2 @! ]  e6 s/ L+ Z" B! D

1 U7 |3 m# S. r+ l
5 J" L$ k  Z# F5 b) @# w7 R        }* [) G/ z' x5 |' e. l
9 K9 e+ ^. g' K# B  X) }
        private void swarmSetp() {+ J: j. r8 i# R( ^4 |% q
                list.addLast(new Agent(Id));
8 c/ V- ~% n) y/ K1 u3 t1 x' H8 E                Id++;
# V. t/ z0 A" b) G3 Y2 Y2 w* L        }$ D6 L: E: |/ O0 f

' Q4 Y: n+ x* R        public Activity activateIn(Swarm context) {
' G' X) j/ d- b5 b                super.activateIn(context);
2 c; r+ i4 F6 S) u' W                schedule.activateIn(this);
% ~( _- y: M& v# b* j' Z; g! e                return getActivity();
: t5 d$ X9 }7 ?5 e4 p9 o! e, Q6 E4 Y        }
6 s" Z3 X( A+ |& N: [& m& `: }/ |1 y" u( j# y
        public static void main(String[] args) {
0 |- v/ P6 @; d9 x( F% @0 |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& r& ^& E" T2 q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  H3 x  _1 q! S0 ?5 ^( g1 x
                swarms.buildObjects();# {5 e: }( V. u9 q) ?
                swarms.buildActions();
  C2 d7 b( v8 S+ U, l5 ]2 D                swarms.activateIn(null).run();
2 a& d& Y7 z* c7 K. f5 [# M        }$ c) J+ x# j* @9 S
) g, B* Z: x7 k: o0 Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-13 14:25 , Processed in 0.017441 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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