设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11052|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ P8 F- j6 \. L1 `& g8 v
/ c' P1 E+ k( O3 U/ }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 r: v7 w" M% t. C6 F( A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' v, g) O3 u/ ~3 H  x
swarm.SignatureNotFoundException1 x3 y% |8 `- K% z5 S( z
        at swarm.Selector.<init>(Selector.java:76); L: X; {) ~' Z* G- A/ k7 t# N0 Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- S2 y* j( `0 i6 P# V$ q) W3 H        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. N" V7 T% n* p: z  L
$ i" |' F' C% F" q. Y8 U4 `' A2 c' h! r
import swarm.objectbase.SwarmImpl;
% k, y( _* ^) g: [import swarm.objectbase.Swarm;
* ]- x7 Y1 Q5 r- C5 J8 E6 w6 ~import swarm.activity.ScheduleImpl;
6 W$ H  S0 e1 D# ]0 ^0 g( o5 vimport swarm.activity.Activity;( [( V0 }$ ~+ j' K3 T2 s
import swarm.activity.ActionGroupImpl;4 m! @9 y7 O  Z+ b! T3 \
import swarm.collections.ListImpl;
  {" E* G  A' U  s! Rimport swarm.defobj.Zone;
3 [: S" P+ x- n8 [* g% ximport swarm.Globals;5 i* n% d; p/ |1 W$ J* [# g3 ^* p9 t" n
import swarm.Selector;
; v3 p2 Q7 v. r* zimport swarm.activity.ActionGroup; % ~; t3 q, I, N: M, M' Y/ V
class Agent {
5 c$ o/ i! e4 Y8 K( C$ H        char id;
6 }% b6 W" `8 o( E! n( _! w, _0 y& F: Q6 I9 v' s+ L- k3 C
        Agent(char id) {
( G8 b( ~( O: Q* R/ W                this.id = id;  T; C7 L$ V+ V6 a; Z5 m
        }
! e+ o1 p; g. |6 ]7 K0 g% P8 A, n5 M5 k9 d5 U/ ~8 K
        public void agentStep() {
, T% }" h8 E9 y" _! n, J, J+ D) O, \                System.out.println(id + ":" + Globals.env.getCurrentTime());# W( {& |3 r8 ?* i) {3 e. [  k
        }5 \- g2 E: u& _8 S" C) ]$ ^
}- o; \+ \. z4 S( Q5 `

2 v# ]& y5 f8 L& W3 B! z9 {public class ActionGroupDemo extends SwarmImpl {" b+ C8 X5 p8 [
        ScheduleImpl schedule;, \# q7 |4 F" a- t
        ActionGroupImpl actionGroup;
3 `; i5 [. Z/ x* d        ListImpl list;* `$ v3 B+ @: b& |- U4 d4 {
        char Id = 'a';& j2 t4 |" F! f* p4 k3 W
1 O( {( w: _2 V  {. j$ Z; P# S
        ActionGroupDemo(Zone aZone) {
* d, m# D# D9 X4 d& D                super(aZone);
* d) ^/ d8 T4 j: A                list = new ListImpl(aZone);/ _' P0 [7 j; U! `( u. Y; Z, n
                swarmSetp();& k4 q, X4 f) z* K) r8 n
                actionGroup = new ActionGroupImpl(aZone);0 h$ c4 v, U* S. I
                schedule = new ScheduleImpl(aZone);
( ^' t) h. f8 U/ }$ G                try {4 V7 ~# U6 s2 U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* D6 l8 G- K5 Z; N3 v* K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: [( L- \5 n/ o  M1 i% w                        " J6 h% F* U" h7 _& w1 \
                        actionGroup.createActionForEach$message(list, agentSel);
+ X( ]9 U( f0 R                        actionGroup.createActionTo$message(this, swarmSel);* Z$ O5 u, E, H. c: Y9 J
                        schedule.at$createAction(0, actionGroup);' y% \6 G- D' {. J
                        schedule.at$createAction(1, actionGroup);
; m! w+ G/ ^2 ]: s                        schedule.at$createAction(2, actionGroup);+ ?% R7 T! N7 v# T+ L: C6 h/ ^7 W

( B6 q. t; ]4 }# T5 g& ]6 L1 Z# M                } catch (Exception e) {
8 o. o$ Q+ U" P/ }  L3 s. i                        e.printStackTrace(System.err);
7 Q6 p9 `* }7 l  ^( t& D) r                        //System.out.println(e);( G" {5 u' `2 Y& e. j: x
                        System.exit(1);0 g5 e, W9 q$ k0 O- b# _* l/ G
                }
+ m! L! c% f% e) q* }8 q
5 K0 V. Z+ w: K( W0 z$ `- s
& _: T" q) u0 A2 G& b& m% {' }        }
5 a4 v* v7 c% C$ H) h( Y/ P; L. D- t/ V& i, x' |0 J% G
        private void swarmSetp() {
# n3 ~- J. P; O1 O                list.addLast(new Agent(Id));
2 [, S+ |# g0 M7 u7 \2 [% b( p                Id++;7 x* l$ p% K) L: }! H& v# x5 D
        }
- Y5 Q; H! u( x0 b" d- p0 p  w( R2 S& o* f. A3 x3 W- u
        public Activity activateIn(Swarm context) {
% k( I( w3 C# f$ m( K1 T/ e                super.activateIn(context);
3 V& v0 U1 Y. O. ~- M                schedule.activateIn(this);! O, l+ m& \1 D
                return getActivity();( W" @; m9 \' A" W! y) ~5 d8 X
        }  @: k' ^1 K6 I# m0 M

% f2 [6 F( s9 n3 \        public static void main(String[] args) {% [! Y) Q/ W+ g
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 Q9 e% \6 y5 Q4 j                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& `5 R  N, E3 [) q9 M                swarms.buildObjects();6 G, X( V; c' Q: M5 k2 l  A
                swarms.buildActions();9 M& P- L" {) g- f% L) o
                swarms.activateIn(null).run();% q- k8 e0 S4 z
        }
  V0 f8 J+ k/ S$ D" S" _
: Y& X. |. _* U/ }/ F* P( I( v. F}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-1 16:46 , Processed in 0.013054 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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