设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8722|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 n1 J, [* F2 Z

7 \& s& K. x. h) _- {& w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 E8 o: P  Y  N6 K& }7 V! q, D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 \* @% j  ^1 a& }  W
swarm.SignatureNotFoundException6 `3 T3 V3 M0 q9 E$ t+ h
        at swarm.Selector.<init>(Selector.java:76)" h! {0 S# H* B
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ u" K: I: n, D; E* Z; z9 N        at ActionGroupDemo.main(ActionGroupDemo.java:67)  Z. E9 n$ B5 G/ F7 s6 ?

9 n1 }) ^; u8 Z4 j5 w6 ], t; N1 z, N: I( m% l, z  i
import swarm.objectbase.SwarmImpl;
. s; T" Q& H( A3 W, P* [import swarm.objectbase.Swarm;, H; s, t  I! k) ~3 f% @2 O
import swarm.activity.ScheduleImpl;
+ |. @2 q8 l: w  t8 timport swarm.activity.Activity;& d. F9 B. K9 ~' y
import swarm.activity.ActionGroupImpl;  S! T" D3 p# b* w7 I
import swarm.collections.ListImpl;
) Y% b9 m# @5 {/ d1 O+ Wimport swarm.defobj.Zone; " P0 O. D9 q8 ?9 d3 G: o
import swarm.Globals;1 H* `1 j, h) p# N' d  J5 Y
import swarm.Selector;
: X- c7 H2 f8 c5 ~6 n' Mimport swarm.activity.ActionGroup; / H: Y* ]7 p4 a9 Z1 ^
class Agent {
. e5 W7 K' }5 x4 g        char id;
7 l, j  z; a8 h8 H: b! z: l- Z2 g+ M2 I1 z) `& a7 X
        Agent(char id) {( ^( l. U7 o. w! e7 W) n3 s
                this.id = id;
7 Y$ G4 f( S( F2 w4 L        }
- f1 m  [6 Q% X! D
5 r! b/ `9 C7 f        public void agentStep() {
+ u7 F" {/ m* }. r                System.out.println(id + ":" + Globals.env.getCurrentTime());  e5 L7 K( e3 f, b
        }, _- {: f7 P9 [+ S7 P) p0 n4 A& d
}; A$ |, p* x) {0 O5 {
  L% n4 n2 @  ]; ]
public class ActionGroupDemo extends SwarmImpl {
& C- T' J: Y0 r7 f        ScheduleImpl schedule;
! M3 c3 d& r/ b1 ]/ h: W' ]        ActionGroupImpl actionGroup;
5 ^# O6 k# V* U" c9 X2 @# x        ListImpl list;5 C7 r- c8 n2 C! e
        char Id = 'a';
4 O' U' D) Q6 p
& l4 w4 q1 d0 G) e( o" Q7 H$ M4 P        ActionGroupDemo(Zone aZone) {0 i" ]( z7 u" ]
                super(aZone);) U3 o0 N' P7 S+ A2 E
                list = new ListImpl(aZone);
4 n, W: [  v+ q4 @                swarmSetp();7 ~. r0 z! {" [+ }2 q) s
                actionGroup = new ActionGroupImpl(aZone);
. `) m/ C% \0 x3 V                schedule = new ScheduleImpl(aZone);" l& j- `: l  s4 l) S- O* k
                try {& R0 `( I3 c  A, i+ ?
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 W( r: L2 t7 O; Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 z8 e! F2 M5 D6 R  `! l9 F                        $ I) Y& S( d: s# L, e# _# n- x' k
                        actionGroup.createActionForEach$message(list, agentSel);
: O6 X5 ~: M3 a. G                        actionGroup.createActionTo$message(this, swarmSel);6 _1 U0 X& m3 I- |$ R+ x) p' L
                        schedule.at$createAction(0, actionGroup);8 L: [3 e2 i* w0 {1 J
                        schedule.at$createAction(1, actionGroup);9 M! s+ W' J# q1 V- e
                        schedule.at$createAction(2, actionGroup);
& T5 ?  b0 ?6 }" [" z
. ?2 X  K. i( r/ S; [+ d                } catch (Exception e) {% [( b2 [4 }' d$ m8 n/ \/ M. M4 W  u
                        e.printStackTrace(System.err);
  u6 K+ ~7 T2 B  u. }, K                        //System.out.println(e);4 _/ i8 K& n0 N8 E& y5 l0 w
                        System.exit(1);$ o- g" ~0 M8 H! x# Y
                }' `- s9 Q/ M5 {2 V5 E

, F# @) _* e( X) w$ Y
; i9 t2 z5 `8 g& @8 M: c: S: h: Q        }
- F) ?1 ^, d$ C2 `* q: S1 Q, L1 K2 B# h8 j$ W) h, T1 J2 K
        private void swarmSetp() {
- w6 B- o3 t+ M  X; P, O                list.addLast(new Agent(Id));
; z6 }! |% l6 D# z$ b0 c                Id++;! S! j; a0 X7 e
        }
5 ]- J2 m. x1 ?2 r  X  v* U) ]- r8 [$ H) o/ t' U1 S1 X
        public Activity activateIn(Swarm context) {( w+ g# U0 b1 a) P# ?1 n
                super.activateIn(context);
& H) I  ]( N/ X                schedule.activateIn(this);% x  N3 M( |5 k
                return getActivity();% A- Q& T/ f8 x' n3 m# P3 `
        }6 l1 y) g, w6 v7 p# ], O
# K1 q2 j& G2 ?# E7 ~& f+ [' j
        public static void main(String[] args) {
, |* t; b- [8 Q% c  V, M$ C                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; |, |, S( N- L0 o% k
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 a3 R3 ]4 }; T3 ]" h7 E3 _
                swarms.buildObjects();5 V& Y! X6 x4 f6 g/ h4 m
                swarms.buildActions();9 ?7 g1 c0 Q- D9 ]2 C9 V
                swarms.activateIn(null).run();
, @( P9 e7 A% Q7 W8 ^1 H: D6 A        }
0 |+ o8 z2 z6 A' i! c; H' s: |) @: u" L* j) w9 r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-20 16:30 , Processed in 0.017898 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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